Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] gedit: update to 3.36.2.
@ 2020-04-27 10:48 mnabid
  2020-04-27 15:38 ` sgn
                   ` (87 more replies)
  0 siblings, 88 replies; 89+ messages in thread
From: mnabid @ 2020-04-27 10:48 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 305 bytes --]

There is a new pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

gedit: update to 3.36.2.


A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 1001 bytes --]

From e0acd72b35aeca7219e4658e6022292e949ca507 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: gedit: update to 3.36.2.
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
@ 2020-04-27 15:38 ` sgn
  2020-04-28  7:56 ` [PR PATCH] [Updated] [WIP] gnome 3.36 updates mnabid
                   ` (86 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: sgn @ 2020-04-27 15:38 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 226 bytes --]

New comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-620064310

Comment:
Would you mind listing all GNOME's update here?

I need to merge them at once and test.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
  2020-04-27 15:38 ` sgn
@ 2020-04-28  7:56 ` mnabid
  2020-04-28  7:58 ` mnabid
                   ` (85 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-04-28  7:56 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 310 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates


A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 13461 bytes --]

From e0acd72b35aeca7219e4658e6022292e949ca507 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 01/12] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 04749c364b87c06d3ebb2295e7915d35f9d4605d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 02/12] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From ea2c77c479e17f252875bbb0f3da1f1b983af30d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 03/12] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 7457c7b528c01e5aee07b3e36468549a0a65998f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 04/12] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From a1b2e672cf7b293db406aa2b0e00ba5c4f460254 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 05/12] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From e5463961a77f348e6e0df849410d050acc342bf5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 06/12] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From a5150f36b688d6d06ff89a98393cd4dddb8d8eb8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 07/12] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 7d5413a1560ee12378bf927d4e2a842543d20ac7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 08/12] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 5595ef8ce06..4931f6754ce 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
+hostmakedepends="gettext docbook-xsl glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From d50ee99633814ebd76ac206c31697021e8711efb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 09/12] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From f69b97dc7e89a29c72a3e4e1d6ab63c4aa31ee60 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:43:04 +0600
Subject: [PATCH 10/12] quadrapassel: update to 3.36.02.

---
 srcpkgs/quadrapassel/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/quadrapassel/template b/srcpkgs/quadrapassel/template
index f3a3d017fc6..69fd822dad2 100644
--- a/srcpkgs/quadrapassel/template
+++ b/srcpkgs/quadrapassel/template
@@ -1,6 +1,6 @@
 # Template file for 'quadrapassel'
 pkgname=quadrapassel
-version=3.36.00
+version=3.36.02
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Jürgen Buchmüller <pullmoll@t-online.de>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Quadrapassel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=eff43749fe2472e4f8eba84dc9a609413f23b53b4af67d88ac5985736fe869f6
+checksum=8bc65a6bf83094deb8792b656c95adde484e12d3ce35cf09f42ce67ee3bf0031

From 5a94e148ed295e7d70a0e40e9dfbd78a486add52 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:12:06 +0600
Subject: [PATCH 11/12] vte3: update to 0.60.2.

---
 srcpkgs/vte3/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/vte3/template b/srcpkgs/vte3/template
index 2ab15918d3b..85f4d2db9cd 100644
--- a/srcpkgs/vte3/template
+++ b/srcpkgs/vte3/template
@@ -1,6 +1,6 @@
 # Template file for 'vte3'
 pkgname=vte3
-version=0.60.1
+version=0.60.2
 revision=1
 wrksrc="vte-${version}"
 build_style=meson
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later, LGPL-2.1-or-later, LGPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Terminal/VTE"
 distfiles="${GNOME_SITE}/vte/${version%.*}/vte-${version}.tar.xz"
-checksum=5e25807233f8a7e15204be7ff694bbcf6facbb0136092b5ba12584a7b70cf0c4
+checksum=35a0280e3f12feeb3096da05699191373c47a4a20c55cb7081e828e6015f8ca5
 
 # Suppress warnings as errors for NULL format strings (musl libc)
 CXXFLAGS="-Wno-error=format="

From 7292d96f713a69096d70f21ad65942aa2663a7df Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 12/12] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
  2020-04-27 15:38 ` sgn
  2020-04-28  7:56 ` [PR PATCH] [Updated] [WIP] gnome 3.36 updates mnabid
@ 2020-04-28  7:58 ` mnabid
  2020-04-28 12:24 ` [PR PATCH] [Updated] " mnabid
                   ` (84 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-04-28  7:58 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 188 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-620445530

Comment:
@sgn Combined all open GNOME PRs I pushed here. 

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (2 preceding siblings ...)
  2020-04-28  7:58 ` mnabid
@ 2020-04-28 12:24 ` mnabid
  2020-04-28 13:34 ` sgn
                   ` (83 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-04-28 12:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 310 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates


A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 16750 bytes --]

From e0acd72b35aeca7219e4658e6022292e949ca507 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 01/13] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 04749c364b87c06d3ebb2295e7915d35f9d4605d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 02/13] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From ea2c77c479e17f252875bbb0f3da1f1b983af30d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 03/13] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 7457c7b528c01e5aee07b3e36468549a0a65998f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 04/13] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From a1b2e672cf7b293db406aa2b0e00ba5c4f460254 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 05/13] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From e5463961a77f348e6e0df849410d050acc342bf5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 06/13] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From a5150f36b688d6d06ff89a98393cd4dddb8d8eb8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 07/13] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 7d5413a1560ee12378bf927d4e2a842543d20ac7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 08/13] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 5595ef8ce06..4931f6754ce 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
+hostmakedepends="gettext docbook-xsl glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From d50ee99633814ebd76ac206c31697021e8711efb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 09/13] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From f69b97dc7e89a29c72a3e4e1d6ab63c4aa31ee60 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:43:04 +0600
Subject: [PATCH 10/13] quadrapassel: update to 3.36.02.

---
 srcpkgs/quadrapassel/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/quadrapassel/template b/srcpkgs/quadrapassel/template
index f3a3d017fc6..69fd822dad2 100644
--- a/srcpkgs/quadrapassel/template
+++ b/srcpkgs/quadrapassel/template
@@ -1,6 +1,6 @@
 # Template file for 'quadrapassel'
 pkgname=quadrapassel
-version=3.36.00
+version=3.36.02
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Jürgen Buchmüller <pullmoll@t-online.de>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Quadrapassel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=eff43749fe2472e4f8eba84dc9a609413f23b53b4af67d88ac5985736fe869f6
+checksum=8bc65a6bf83094deb8792b656c95adde484e12d3ce35cf09f42ce67ee3bf0031

From 5a94e148ed295e7d70a0e40e9dfbd78a486add52 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:12:06 +0600
Subject: [PATCH 11/13] vte3: update to 0.60.2.

---
 srcpkgs/vte3/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/vte3/template b/srcpkgs/vte3/template
index 2ab15918d3b..85f4d2db9cd 100644
--- a/srcpkgs/vte3/template
+++ b/srcpkgs/vte3/template
@@ -1,6 +1,6 @@
 # Template file for 'vte3'
 pkgname=vte3
-version=0.60.1
+version=0.60.2
 revision=1
 wrksrc="vte-${version}"
 build_style=meson
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later, LGPL-2.1-or-later, LGPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Terminal/VTE"
 distfiles="${GNOME_SITE}/vte/${version%.*}/vte-${version}.tar.xz"
-checksum=5e25807233f8a7e15204be7ff694bbcf6facbb0136092b5ba12584a7b70cf0c4
+checksum=35a0280e3f12feeb3096da05699191373c47a4a20c55cb7081e828e6015f8ca5
 
 # Suppress warnings as errors for NULL format strings (musl libc)
 CXXFLAGS="-Wno-error=format="

From 7292d96f713a69096d70f21ad65942aa2663a7df Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 12/13] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From f021ad5191d53bee664b58c8cce3fc24a3eeab92 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 13/13] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (3 preceding siblings ...)
  2020-04-28 12:24 ` [PR PATCH] [Updated] " mnabid
@ 2020-04-28 13:34 ` sgn
  2020-04-28 15:25 ` rwt3k
                   ` (82 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: sgn @ 2020-04-28 13:34 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 207 bytes --]

New comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-620611665

Comment:
I'll verify this tomorrow if noone else steps in.
I'm busy right now.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (4 preceding siblings ...)
  2020-04-28 13:34 ` sgn
@ 2020-04-28 15:25 ` rwt3k
  2020-04-29  8:15 ` [WIP] gnome apps " mnabid
                   ` (81 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: rwt3k @ 2020-04-28 15:25 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 200 bytes --]

New comment by rwt3k on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-620676657

Comment:
If possible, include `gnome-shell` + dependencies in this pr.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome apps 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (5 preceding siblings ...)
  2020-04-28 15:25 ` rwt3k
@ 2020-04-29  8:15 ` mnabid
  2020-04-29  8:15 ` mnabid
                   ` (80 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-04-29  8:15 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 298 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-621056673

Comment:
> If possible, include `gnome-shell` + dependencies in this pr.

I'll place `gnome-shell` updates in another PR as larger PR will become harder to maintain.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome apps 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (6 preceding siblings ...)
  2020-04-29  8:15 ` [WIP] gnome apps " mnabid
@ 2020-04-29  8:15 ` mnabid
  2020-04-29  9:54 ` mnabid
                   ` (79 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-04-29  8:15 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 306 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-621056673

Comment:
> If possible, include `gnome-shell` + dependencies in this pr.

I'll place `gnome-shell` related updates in another PR as larger PR will become harder to maintain.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome apps 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (7 preceding siblings ...)
  2020-04-29  8:15 ` mnabid
@ 2020-04-29  9:54 ` mnabid
  2020-04-29 22:01 ` [WIP] gnome " kuba77cz
                   ` (78 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-04-29  9:54 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 306 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-621056673

Comment:
> If possible, include `gnome-shell` + dependencies in this pr.

I'll place `gnome-shell` related updates in another PR as larger PR will become harder to maintain.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (8 preceding siblings ...)
  2020-04-29  9:54 ` mnabid
@ 2020-04-29 22:01 ` kuba77cz
  2020-04-30  3:51 ` mnabid
                   ` (77 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: kuba77cz @ 2020-04-29 22:01 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 362 bytes --]

New comment by kuba77cz on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-621488619

Comment:
I tried to build mutter 3.36.2 but it fails on:

```
Run-time dependency graphene-gobject-1.0 found: NO (tried pkgconfig)

meson.build:93:0: ERROR: Dependency "graphene-gobject-1.0" not found, tried pkgconfig
```


^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (9 preceding siblings ...)
  2020-04-29 22:01 ` [WIP] gnome " kuba77cz
@ 2020-04-30  3:51 ` mnabid
  2020-05-01  8:19 ` [PR PATCH] [Updated] " mnabid
                   ` (76 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-04-30  3:51 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 414 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-621596687

Comment:
> I tried to build mutter 3.36.2 but it fails on:
> 
> ```
> Run-time dependency graphene-gobject-1.0 found: NO (tried pkgconfig)
> 
> meson.build:93:0: ERROR: Dependency "graphene-gobject-1.0" not found, tried pkgconfig
> ```

Add `graphene-devel` in `makedepends`.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (10 preceding siblings ...)
  2020-04-30  3:51 ` mnabid
@ 2020-05-01  8:19 ` mnabid
  2020-05-01  8:28 ` mnabid
                   ` (75 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-01  8:19 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 362 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for `pipewire-0.3.4` to be merged (#20413) .

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 99667 bytes --]

From 035884fbb7e52c636d1d5f4c0a07fdf04ac58c84 Mon Sep 17 00:00:00 2001
From: Kridsada Thanabulpong <sirn@ogsite.net>
Date: Sat, 28 Mar 2020 16:23:52 +0900
Subject: [PATCH 01/41] pipewire: update to 0.3.2

---
 common/shlibs                  |  2 +-
 srcpkgs/alsa-pipewire          |  1 +
 srcpkgs/libjack-pipewire       |  1 +
 srcpkgs/libpulseaudio-pipewire |  1 +
 srcpkgs/pipewire/template      | 71 ++++++++++++++++++++++++++--------
 5 files changed, 59 insertions(+), 17 deletions(-)
 create mode 120000 srcpkgs/alsa-pipewire
 create mode 120000 srcpkgs/libjack-pipewire
 create mode 120000 srcpkgs/libpulseaudio-pipewire

diff --git a/common/shlibs b/common/shlibs
index a208407b359..0b58777db72 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3199,7 +3199,7 @@ libarcan_shmif_ext.so.0.11 arcan-0.5.4.3_1
 libarcan_shmif_server.so.0.11 arcan-0.5.4.3_1
 libarcan_tui.so.0.11 arcan-0.5.4.3_1
 liblwipv6.so.2 lwipv6-1.5a_1
-libpipewire-0.2.so.1 libpipewire-0.2.2_1
+libpipewire-0.3.so.0 libpipewire-0.3.2_1
 libvolk.so.2.2.1 volk-2.2.1_1
 libgnuradio-runtime.so.3.8.0 gnuradio-3.8.0.0_1
 libgnuradio-pmt.so.3.8.0 gnuradio-3.8.0.0_1
diff --git a/srcpkgs/alsa-pipewire b/srcpkgs/alsa-pipewire
new file mode 120000
index 00000000000..c9c97cf6707
--- /dev/null
+++ b/srcpkgs/alsa-pipewire
@@ -0,0 +1 @@
+pipewire
\ No newline at end of file
diff --git a/srcpkgs/libjack-pipewire b/srcpkgs/libjack-pipewire
new file mode 120000
index 00000000000..c9c97cf6707
--- /dev/null
+++ b/srcpkgs/libjack-pipewire
@@ -0,0 +1 @@
+pipewire
\ No newline at end of file
diff --git a/srcpkgs/libpulseaudio-pipewire b/srcpkgs/libpulseaudio-pipewire
new file mode 120000
index 00000000000..c9c97cf6707
--- /dev/null
+++ b/srcpkgs/libpulseaudio-pipewire
@@ -0,0 +1 @@
+pipewire
\ No newline at end of file
diff --git a/srcpkgs/pipewire/template b/srcpkgs/pipewire/template
index 7f646dad11d..697c20c0347 100644
--- a/srcpkgs/pipewire/template
+++ b/srcpkgs/pipewire/template
@@ -1,26 +1,39 @@
 # Template file for 'pipewire'
 pkgname=pipewire
-version=0.2.7
+version=0.3.2
 revision=1
 build_style=meson
-configure_args="-Dman=true -Dgstreamer=enabled -Ddocs=true -Dsystemd=false"
+configure_args="-Dman=true -Dgstreamer=true -Ddocs=true -Dsystemd=false
+ -Dbluez5=true -Dffmpeg=true -Dpipewire-alsa=true -Dpipewire-jack=true
+ -Dpipewire-pulseaudio=true"
 hostmakedepends="doxygen graphviz pkg-config xmltoman"
 makedepends="SDL2-devel ffmpeg-devel gst-plugins-base1-devel jack-devel
- sbc-devel v4l-utils-devel libva-devel"
+ sbc-devel v4l-utils-devel libva-devel libbluetooth-devel"
 short_desc="Server and user space API to deal with multimedia pipelines"
 maintainer="Orphaned <orphan@voidlinux.org>"
-#Next release will probably change to MIT, currently listed in master
-license="LGPL-2.1-only, GPL-2.0-only "
+license="MIT"
 homepage="https://pipewire.org/"
-changelog="https://raw.githubusercontent.com/PipeWire/pipewire/master/NEWS"
-distfiles="https://github.com/PipeWire/pipewire/archive/${version}.tar.gz"
-checksum=bfaa0f6ae6c0791e2e0b59234d399753bf24f1b33dbf587682363a8463dd8df1
+changelog="https://gitlab.freedesktop.org/pipewire/pipewire/-/raw/master/NEWS"
+distfiles="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${version}/pipewire-${version}.tar.gz"
+checksum=fd1bb2ae65997d921d6c18e1828f23251dac3145bbe5031c324afeb39f9b26fb
 conf_files="/etc/pipewire/pipewire.conf"
 
+CFLAGS+="-Wformat"
+
+if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
+	makedepends+=" libatomic-devel"
+	LDFLAGS+=" -latomic"
+fi
+
+post_install() {
+	vlicense LICENSE
+}
+
 libpipewire_package() {
 	short_desc+=" - pipewire library"
 	pkg_install() {
-		vmove "usr/lib/libpipewire-0.2.so.*"
+		vmove "usr/lib/libpipewire-0.3.so.*"
+		vmove usr/lib/pipewire-0.3
 	}
 }
 
@@ -28,25 +41,25 @@ pipewire-devel_package() {
 	depends="libpipewire-${version}_${revision}"
 	short_desc+=" - pipewire and libspa development files"
 	pkg_install() {
-		vmove usr/include/pipewire
-		vmove usr/include/spa
-		vmove usr/lib/pkgconfig/libpipewire-0.2.pc
-		vmove usr/lib/pkgconfig/libspa-0.1.pc
-		vmove usr/lib/libpipewire-0.2.so
+		vmove usr/include/pipewire-0.3
+		vmove usr/include/spa-0.2
+		vmove usr/lib/pkgconfig/libpipewire-0.3.pc
+		vmove usr/lib/pkgconfig/libspa-0.2.pc
+		vmove usr/lib/libpipewire-0.3.so
 	}
 }
 
 libspa-ffmpeg_package() {
 	short_desc+=" - ffmpeg plugins"
 	pkg_install() {
-		vmove usr/lib/spa/ffmpeg
+		vmove usr/lib/spa-0.2/ffmpeg
 	}
 }
 
 libspa-bluetooth_package() {
 	short_desc+=" - bluetooth plugins"
 	pkg_install() {
-		vmove usr/lib/spa/bluez5
+		vmove usr/lib/spa-0.2/bluez5
 	}
 }
 
@@ -57,6 +70,32 @@ gstreamer1-pipewire_package() {
 	}
 }
 
+libpulseaudio-pipewire_package() {
+	depends="libpipewire-${version}_${revision}"
+	short_desc+=" - PulseAudio client library"
+	pkg_install() {
+		vmove "usr/lib/libpulse-mainloop-glib-pw.so*"
+		vmove "usr/lib/libpulse-pw.so*"
+		vmove "usr/lib/libpulse-simple-pw.so*"
+	}
+}
+
+alsa-pipewire_package() {
+	depends="libpipewire-${version}_${revision}"
+	short_desc+=" - ALSA client library"
+	pkg_install() {
+		vmove "usr/lib/alsa-lib"
+	}
+}
+
+libjack-pipewire_package() {
+	depends="libpipewire-${version}_${revision}"
+	short_desc+=" - JACK client library"
+	pkg_install() {
+		vmove "usr/lib/libjack-pw.so*"
+	}
+}
+
 pipewire-doc_package() {
 	archs=noarch
 	short_desc+=" - documentation"

From d568efb8929d965215bbe1b4e68544b1a3cb373b Mon Sep 17 00:00:00 2001
From: Kridsada Thanabulpong <sirn@ogsite.net>
Date: Sat, 28 Mar 2020 16:24:46 +0900
Subject: [PATCH 02/41] xdg-desktop-portal-kde: rebuild for pipewire-0.3

---
 srcpkgs/xdg-desktop-portal-kde/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-kde/template b/srcpkgs/xdg-desktop-portal-kde/template
index f26057d323a..9519abc19f6 100644
--- a/srcpkgs/xdg-desktop-portal-kde/template
+++ b/srcpkgs/xdg-desktop-portal-kde/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-kde'
 pkgname=xdg-desktop-portal-kde
 version=5.18.4.1
-revision=1
+revision=2
 build_style=cmake
 hostmakedepends="extra-cmake-modules qt5-qmake qt5-host-tools kcoreaddons gettext"
 makedepends="glib-devel kio-devel kwayland-devel libepoxy-devel pipewire-devel

From 297644fb3afca32d6995c01c86b574ba90e5e113 Mon Sep 17 00:00:00 2001
From: Kridsada Thanabulpong <sirn@ogsite.net>
Date: Sat, 28 Mar 2020 16:24:26 +0900
Subject: [PATCH 03/41] xdg-desktop-portal: rebuild for pipewire-0.3

---
 .../patches/pipewire-0.3.patch                | 551 ++++++++++++++++++
 srcpkgs/xdg-desktop-portal/template           |   8 +-
 2 files changed, 557 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/xdg-desktop-portal/patches/pipewire-0.3.patch

diff --git a/srcpkgs/xdg-desktop-portal/patches/pipewire-0.3.patch b/srcpkgs/xdg-desktop-portal/patches/pipewire-0.3.patch
new file mode 100644
index 00000000000..94ebe083598
--- /dev/null
+++ b/srcpkgs/xdg-desktop-portal/patches/pipewire-0.3.patch
@@ -0,0 +1,551 @@
+From a38901e5e7f835efe7b7a06c55790c8c20bc91a2 Mon Sep 17 00:00:00 2001
+From: Wim Taymans <wtaymans@redhat.com>
+Date: Tue, 14 Jan 2020 09:37:09 +0100
+Subject: [PATCH] PipeWire: update to 0.3 API
+
+---
+ configure.ac      |   2 +-
+ src/camera.c      |  24 ++++----
+ src/pipewire.c    | 141 +++++++++++++---------------------------------
+ src/pipewire.h    |  10 ++--
+ src/screen-cast.c |  98 ++++++--------------------------
+ 5 files changed, 72 insertions(+), 203 deletions(-)
+
+diff --git configure.ac configure.ac
+index 89902fa..62d7960 100644
+--- configure.ac
++++ configure.ac
+@@ -97,7 +97,7 @@ AC_ARG_ENABLE(pipewire,
+ 	      [AS_HELP_STRING([--enable-pipewire],[Enable PipeWire support. Needed for screen cast portal])],
+ 	      enable_pipewire=$enableval, enable_pipewire=yes)
+ if test x$enable_pipewire = xyes ; then
+-	PKG_CHECK_MODULES(PIPEWIRE, [libpipewire-0.2 >= 0.2.6])
++	PKG_CHECK_MODULES(PIPEWIRE, [libpipewire-0.3 >= 0.2.90])
+ 	AC_DEFINE([HAVE_PIPEWIRE],[1], [Define to enable PipeWire support])
+ fi
+ AM_CONDITIONAL([HAVE_PIPEWIRE],[test "$enable_pipewire" = "yes"])
+diff --git src/camera.c src/camera.c
+index c2b392c..20fe3aa 100644
+--- src/camera.c
++++ src/camera.c
+@@ -141,7 +141,7 @@ open_pipewire_camera_remote (const char *app_id,
+                              GError **error)
+ {
+   PipeWireRemote *remote;
+-  struct spa_dict_item permission_items[1];
++  struct pw_permission permission_items[2];
+   struct pw_properties *pipewire_properties;
+ 
+   pipewire_properties =
+@@ -158,12 +158,12 @@ open_pipewire_camera_remote (const char *app_id,
+    * Hide all existing and future nodes by default. PipeWire will use the
+    * permission store to set up permissions.
+    */
+-  permission_items[0].key = PW_CORE_PROXY_PERMISSIONS_DEFAULT;
+-  permission_items[0].value = "---";
++  permission_items[0] = PW_PERMISSION_INIT (PW_ID_CORE, PW_PERM_RWX);
++  permission_items[1] = PW_PERMISSION_INIT (PW_ID_ANY, 0);
+ 
+-  pw_core_proxy_permissions (pw_remote_get_core_proxy (remote->remote),
+-                             &SPA_DICT_INIT (permission_items,
+-                                             G_N_ELEMENTS (permission_items)));
++  pw_client_update_permissions (pw_core_get_client(remote->core),
++                                G_N_ELEMENTS (permission_items),
++                                permission_items);
+ 
+   pipewire_remote_roundtrip (remote);
+ 
+@@ -219,7 +219,7 @@ handle_open_pipewire_remote (XdpCamera *object,
+     }
+ 
+   out_fd_list = g_unix_fd_list_new ();
+-  fd = pw_remote_steal_fd (remote->remote);
++  fd = pw_core_steal_fd (remote->core);
+   fd_id = g_unix_fd_list_append (out_fd_list, fd, &error);
+   close (fd);
+   pipewire_remote_destroy (remote);
+@@ -250,29 +250,28 @@ camera_iface_init (XdpCameraIface *iface)
+ static void
+ global_added_cb (PipeWireRemote *remote,
+                  uint32_t id,
+-                 uint32_t type,
++                 const char *type,
+                  const struct spa_dict *props,
+                  gpointer user_data)
+ {
+   Camera *camera = user_data;
+-  struct pw_type *core_type = pw_core_get_type (remote->core);
+   const struct spa_dict_item *media_class;
+   const struct spa_dict_item *media_role;
+ 
+-  if (type != core_type->node)
++  if (strcmp(type, PW_TYPE_INTERFACE_Node) != 0)
+     return;
+ 
+   if (!props)
+     return;
+ 
+-  media_class = spa_dict_lookup_item (props, "media.class");
++  media_class = spa_dict_lookup_item (props, PW_KEY_MEDIA_CLASS);
+   if (!media_class)
+     return;
+ 
+   if (g_strcmp0 (media_class->value, "Video/Source") != 0)
+     return;
+ 
+-  media_role = spa_dict_lookup_item (props, "media.role");
++  media_role = spa_dict_lookup_item (props, PW_KEY_MEDIA_ROLE);
+   if (!media_role)
+     return;
+ 
+@@ -342,6 +341,7 @@ create_pipewire_remote (Camera *camera,
+     }
+ 
+   pipewire_properties = pw_properties_new ("pipewire.access.portal.is_portal", "true",
++                                           "portal.monitor", "Camera",
+                                            NULL);
+   camera->pipewire_remote = pipewire_remote_new_sync (pipewire_properties,
+                                                       global_added_cb,
+diff --git src/pipewire.c src/pipewire.c
+index 793a378..162cd55 100644
+--- src/pipewire.c
++++ src/pipewire.c
+@@ -21,6 +21,7 @@
+ #include <errno.h>
+ #include <glib.h>
+ #include <pipewire/pipewire.h>
++#include <spa/utils/result.h>
+ 
+ #include "pipewire.h"
+ 
+@@ -36,27 +37,25 @@ static gboolean is_pipewire_initialized = FALSE;
+ static void
+ registry_event_global (void *user_data,
+                        uint32_t id,
+-                       uint32_t parent_id,
+                        uint32_t permissions,
+-                       uint32_t type,
++                       const char *type,
+                        uint32_t version,
+                        const struct spa_dict *props)
+ {
+   PipeWireRemote *remote = user_data;
+-  struct pw_type *core_type = pw_core_get_type (remote->core);
+   const struct spa_dict_item *factory_object_type;
+   PipeWireGlobal *global;
+ 
+   global = g_new0 (PipeWireGlobal, 1);
+   *global = (PipeWireGlobal) {
+-    .parent_id = parent_id,
++    .parent_id = id,
+   };
+ 
+   g_hash_table_insert (remote->globals, GINT_TO_POINTER (id), global);
+   if (remote->global_added_cb)
+     remote->global_added_cb (remote, id, type, props, remote->user_data);
+ 
+-  if (type != core_type->factory)
++  if (strcmp(type, PW_TYPE_INTERFACE_Factory) != 0)
+     return;
+ 
+   factory_object_type = spa_dict_lookup_item (props, "factory.type.name");
+@@ -81,8 +80,8 @@ registry_event_global_remove (void *user_data,
+   g_hash_table_remove (remote->globals, GINT_TO_POINTER (id));
+ }
+ 
+-static const struct pw_registry_proxy_events registry_events = {
+-  PW_VERSION_REGISTRY_PROXY_EVENTS,
++static const struct pw_registry_events registry_events = {
++  PW_VERSION_REGISTRY_EVENTS,
+   .global = registry_event_global,
+   .global_remove = registry_event_global_remove,
+ };
+@@ -90,7 +89,7 @@ static const struct pw_registry_proxy_events registry_events = {
+ void
+ pipewire_remote_roundtrip (PipeWireRemote *remote)
+ {
+-  pw_core_proxy_sync (remote->core_proxy, ++remote->sync_seq);
++  remote->sync_seq = pw_core_sync (remote->core, PW_ID_CORE, remote->sync_seq);
+   pw_main_loop_run (remote->loop);
+ }
+ 
+@@ -98,16 +97,13 @@ static gboolean
+ discover_node_factory_sync (PipeWireRemote *remote,
+                             GError **error)
+ {
+-  struct pw_type *core_type = pw_core_get_type (remote->core);
+-  struct pw_registry_proxy *registry_proxy;
++  struct pw_registry *registry;
+ 
+-  registry_proxy = pw_core_proxy_get_registry (remote->core_proxy,
+-                                               core_type->registry,
+-                                               PW_VERSION_REGISTRY, 0);
+-  pw_registry_proxy_add_listener (registry_proxy,
+-                                  &remote->registry_listener,
+-                                  &registry_events,
+-                                  remote);
++  registry = pw_core_get_registry (remote->core, PW_VERSION_REGISTRY, 0);
++  pw_registry_add_listener (registry,
++                            &remote->registry_listener,
++                            &registry_events,
++                            remote);
+ 
+   pipewire_remote_roundtrip (remote);
+ 
+@@ -122,59 +118,35 @@ discover_node_factory_sync (PipeWireRemote *remote,
+ }
+ 
+ static void
+-on_state_changed (void *user_data,
+-                  enum pw_remote_state old,
+-                  enum pw_remote_state state,
+-                  const char *error)
++core_event_error (void       *user_data,
++                  uint32_t    id,
++		  int         seq,
++		  int         res,
++		  const char *message)
+ {
+   PipeWireRemote *remote = user_data;
+ 
+-  switch (state)
++  if (id == PW_ID_CORE)
+     {
+-    case PW_REMOTE_STATE_ERROR:
+-      if (!remote->error)
+-        {
+-          g_set_error (&remote->error, G_IO_ERROR, G_IO_ERROR_FAILED,
+-                       "%s", error);
+-        }
++      g_set_error (&remote->error, G_IO_ERROR, G_IO_ERROR_FAILED,
++                 "%s", message);
+       pw_main_loop_quit (remote->loop);
+-      break;
+-    case PW_REMOTE_STATE_UNCONNECTED:
+-      if (!remote->error)
+-        {
+-          g_set_error (&remote->error, G_IO_ERROR, G_IO_ERROR_FAILED,
+-                       "Disconnected");
+-        }
+-      pw_main_loop_quit (remote->loop);
+-      break;
+-    case PW_REMOTE_STATE_CONNECTING:
+-      break;
+-    case PW_REMOTE_STATE_CONNECTED:
+-      pw_main_loop_quit (remote->loop);
+-      break;
+-    default:
+-      g_warning ("Unknown PipeWire state");
+-      break;
+     }
+ }
+ 
+-static const struct pw_remote_events remote_events = {
+-  PW_VERSION_REMOTE_EVENTS,
+-  .state_changed = on_state_changed,
+-};
+-
+ static void
+ core_event_done (void *user_data,
+-                 uint32_t seq)
++                 uint32_t id, int seq)
+ {
+   PipeWireRemote *remote = user_data;
+ 
+-  if (remote->sync_seq == seq)
++  if (id == PW_ID_CORE && remote->sync_seq == seq)
+     pw_main_loop_quit (remote->loop);
+ }
+ 
+-static const struct pw_core_proxy_events core_events = {
+-  PW_VERSION_CORE_PROXY_EVENTS,
++static const struct pw_core_events core_events = {
++  PW_VERSION_CORE_EVENTS,
++  .error = core_event_error,
+   .done = core_event_done,
+ };
+ 
+@@ -237,8 +209,8 @@ void
+ pipewire_remote_destroy (PipeWireRemote *remote)
+ {
+   g_clear_pointer (&remote->globals, g_hash_table_destroy);
+-  g_clear_pointer (&remote->remote, pw_remote_destroy);
+-  g_clear_pointer (&remote->core, pw_core_destroy);
++  g_clear_pointer (&remote->core, pw_core_disconnect);
++  g_clear_pointer (&remote->context, pw_context_destroy);
+   g_clear_pointer (&remote->loop, pw_main_loop_destroy);
+   g_clear_error (&remote->error);
+ 
+@@ -307,68 +279,31 @@ pipewire_remote_new_sync (struct pw_properties *pipewire_properties,
+       return NULL;
+     }
+ 
+-  remote->core = pw_core_new (pw_main_loop_get_loop (remote->loop), NULL);
+-  if (!remote->core)
++  remote->context = pw_context_new (pw_main_loop_get_loop (remote->loop), NULL, 0);
++  if (!remote->context)
+     {
+       pipewire_remote_destroy (remote);
+       pw_properties_free (pipewire_properties);
+       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+-                   "Couldn't create PipeWire core");
++                   "Couldn't create PipeWire context");
+       return NULL;
+     }
+ 
+-  remote->remote = pw_remote_new (remote->core, pipewire_properties, 0);
+-  if (!remote->remote)
++  remote->core = pw_context_connect (remote->context, pipewire_properties, 0);
++  if (!remote->core)
+     {
+       pipewire_remote_destroy (remote);
+       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+-                   "Couldn't create PipeWire remote");
++                   "Couldn't connect to PipeWire");
+       return NULL;
+     }
+ 
+   remote->globals = g_hash_table_new_full (NULL, NULL, NULL, g_free);
+ 
+-  pw_remote_add_listener (remote->remote,
+-                          &remote->remote_listener,
+-                          &remote_events,
+-                          remote);
+-
+-  if (pw_remote_connect (remote->remote) != 0)
+-    {
+-      pipewire_remote_destroy (remote);
+-      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+-                   "Couldn't connect PipeWire remote");
+-      return NULL;
+-    }
+-
+-  pw_main_loop_run (remote->loop);
+-
+-  switch (pw_remote_get_state (remote->remote, NULL))
+-    {
+-    case PW_REMOTE_STATE_ERROR:
+-    case PW_REMOTE_STATE_UNCONNECTED:
+-      *error = g_steal_pointer (&remote->error);
+-      pipewire_remote_destroy (remote);
+-      return NULL;
+-    case PW_REMOTE_STATE_CONNECTING:
+-      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+-                   "PipeWire loop stopped unexpectedly");
+-      pipewire_remote_destroy (remote);
+-      return NULL;
+-    case PW_REMOTE_STATE_CONNECTED:
+-      break;
+-    default:
+-      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+-                   "Unexpected PipeWire state");
+-      pipewire_remote_destroy (remote);
+-      return NULL;
+-    }
+-
+-  remote->core_proxy = pw_remote_get_core_proxy (remote->remote);
+-  pw_core_proxy_add_listener (remote->core_proxy,
+-                              &remote->core_listener,
+-                              &core_events,
+-                              remote);
++  pw_core_add_listener (remote->core,
++                        &remote->core_listener,
++                        &core_events,
++                        remote);
+ 
+   if (!discover_node_factory_sync (remote, error))
+     {
+diff --git src/pipewire.h src/pipewire.h
+index 0f1bf54..bf48d5e 100644
+--- src/pipewire.h
++++ src/pipewire.h
+@@ -32,7 +32,7 @@ typedef struct _PipeWireGlobal
+ 
+ typedef void (* PipeWireGlobalAddedCallback) (PipeWireRemote *remote,
+                                               uint32_t id,
+-                                              uint32_t type,
++                                              const char *type,
+                                               const struct spa_dict *props,
+                                               gpointer user_data);
+ 
+@@ -43,13 +43,11 @@ typedef void (* PipeWireGlobalRemovedCallback) (PipeWireRemote *remote,
+ struct _PipeWireRemote
+ {
+   struct pw_main_loop *loop;
++  struct pw_context *context;
+   struct pw_core *core;
+-  struct pw_remote *remote;
+-  struct spa_hook remote_listener;
+-
+-  struct pw_core_proxy *core_proxy;
+   struct spa_hook core_listener;
+-  uint32_t sync_seq;
++
++  int sync_seq;
+ 
+   struct spa_hook registry_listener;
+ 
+diff --git src/screen-cast.c src/screen-cast.c
+index 7881ddc..1677050 100644
+--- src/screen-cast.c
++++ src/screen-cast.c
+@@ -31,10 +31,10 @@
+ #include "xdp-impl-dbus.h"
+ #include "xdp-utils.h"
+ 
+-#define PERMISSION_ITEM(item_key, item_value) \
+-  ((struct spa_dict_item) { \
+-    .key = item_key, \
+-    .value = item_value \
++#define PERMISSION_ITEM(item_id, item_permissions) \
++  ((struct pw_permission) { \
++    .id = item_id, \
++    .permissions = item_permissions \
+   })
+ 
+ typedef struct _ScreenCast ScreenCast;
+@@ -517,42 +517,9 @@ screen_cast_stream_get_pipewire_node_id (ScreenCastStream *stream)
+   return stream->id;
+ }
+ 
+-static void
+-append_parent_permissions (PipeWireRemote *remote,
+-                           GArray *permission_items,
+-                           GList **string_stash,
+-                           PipeWireGlobal *global,
+-                           const char *permission)
+-{
+-  PipeWireGlobal *parent;
+-  char *parent_permission_value;
+-
+-  if (global->parent_id == 0)
+-    return;
+-
+-  parent = g_hash_table_lookup (remote->globals, GINT_TO_POINTER (global->parent_id));
+-
+-  if (parent->permission_set)
+-    return;
+-  parent->permission_set = TRUE;
+-
+-  append_parent_permissions (remote, permission_items, string_stash,
+-                             parent, permission);
+-
+-  parent_permission_value = g_strdup_printf ("%u:%s",
+-                                             global->parent_id,
+-                                             permission);
+-  *string_stash = g_list_prepend (*string_stash, parent_permission_value);
+-
+-  g_array_append_val (permission_items,
+-                      PERMISSION_ITEM (PW_CORE_PROXY_PERMISSIONS_GLOBAL,
+-                                       parent_permission_value));
+-}
+-
+ static void
+ append_stream_permissions (PipeWireRemote *remote,
+                            GArray *permission_items,
+-                           GList **string_stash,
+                            GList *streams)
+ {
+   GList *l;
+@@ -561,21 +528,10 @@ append_stream_permissions (PipeWireRemote *remote,
+     {
+       ScreenCastStream *stream = l->data;
+       uint32_t stream_id;
+-      PipeWireGlobal *stream_global;
+-      char *stream_permission_value;
+ 
+       stream_id = screen_cast_stream_get_pipewire_node_id (stream);
+-      stream_global = g_hash_table_lookup (remote->globals,
+-                                           GINT_TO_POINTER (stream_id));
+-
+-      append_parent_permissions (remote, permission_items, string_stash,
+-                                 stream_global, "r--");
+-
+-      stream_permission_value = g_strdup_printf ("%u:rwx", stream_id);
+-      *string_stash = g_list_prepend (*string_stash, stream_permission_value);
+       g_array_append_val (permission_items,
+-                          PERMISSION_ITEM (PW_CORE_PROXY_PERMISSIONS_GLOBAL,
+-                                           stream_permission_value));
++                          PERMISSION_ITEM (stream_id, PW_PERM_RWX));
+     }
+ }
+ 
+@@ -587,9 +543,6 @@ open_pipewire_screen_cast_remote (const char *app_id,
+   struct pw_properties *pipewire_properties;
+   PipeWireRemote *remote;
+   g_autoptr(GArray) permission_items = NULL;
+-  char *node_factory_permission_string;
+-  GList *string_stash = NULL;
+-  struct spa_dict *permission_dict;
+   PipeWireGlobal *node_global;
+ 
+   pipewire_properties = pw_properties_new ("pipewire.access.portal.app_id", app_id,
+@@ -603,48 +556,31 @@ open_pipewire_screen_cast_remote (const char *app_id,
+ 
+   permission_items = g_array_new (FALSE, TRUE, sizeof (struct spa_dict_item));
+ 
+-  /*
+-   * Hide all existing and future nodes (except the ones we explicitly list below.
+-   */
+-  g_array_append_val (permission_items,
+-                      PERMISSION_ITEM (PW_CORE_PROXY_PERMISSIONS_EXISTING,
+-                                       "---"));
+-  g_array_append_val (permission_items,
+-                      PERMISSION_ITEM (PW_CORE_PROXY_PERMISSIONS_DEFAULT,
+-                                       "---"));
+-
+   /*
+    * PipeWire:Interface:Core
+    * Needs rwx to be able create the sink node using the create-object method
+    */
+   g_array_append_val (permission_items,
+-                      PERMISSION_ITEM (PW_CORE_PROXY_PERMISSIONS_GLOBAL,
+-                                       "0:rwx"));
++                      PERMISSION_ITEM (PW_ID_CORE, PW_PERM_RWX));
+ 
+   /*
+    * PipeWire:Interface:NodeFactory
+    * Needs r-- so it can be passed to create-object when creating the sink node.
+    */
+-  node_factory_permission_string = g_strdup_printf ("%d:r--",
+-                                                    remote->node_factory_id);
+-  string_stash = g_list_prepend (string_stash, node_factory_permission_string);
+   g_array_append_val (permission_items,
+-                      PERMISSION_ITEM (PW_CORE_PROXY_PERMISSIONS_GLOBAL,
+-                                       node_factory_permission_string));
+-  node_global = g_hash_table_lookup (remote->globals,
+-                                     GINT_TO_POINTER (remote->node_factory_id));
+-  append_parent_permissions (remote, permission_items, &string_stash,
+-                             node_global, "r--");
++                      PERMISSION_ITEM (remote->node_factory_id, PW_PERM_R));
+ 
+-  append_stream_permissions (remote, permission_items, &string_stash, streams);
++  append_stream_permissions (remote, permission_items, streams);
+ 
+-  permission_dict =
+-    &SPA_DICT_INIT ((struct spa_dict_item *) permission_items->data,
+-                    permission_items->len);
+-  pw_core_proxy_permissions (pw_remote_get_core_proxy (remote->remote),
+-                             permission_dict);
++  /*
++   * Hide all existing and future nodes (except the ones we explicitly list above).
++   */
++  g_array_append_val (permission_items,
++                      PERMISSION_ITEM (PW_ID_ANY, 0));
+ 
+-  g_list_free_full (string_stash, g_free);
++  pw_client_update_permissions (pw_core_get_client(remote->core),
++                                permission_items->len,
++                                (const struct pw_permission *)permission_items->data);
+ 
+   pipewire_remote_roundtrip (remote);
+ 
+@@ -943,7 +879,7 @@ handle_open_pipewire_remote (XdpScreenCast *object,
+     }
+ 
+   out_fd_list = g_unix_fd_list_new ();
+-  fd = pw_remote_steal_fd (remote->remote);
++  fd = pw_core_steal_fd (remote->core);
+   fd_id = g_unix_fd_list_append (out_fd_list, fd, &error);
+   close (fd);
+   pipewire_remote_destroy (remote);
diff --git a/srcpkgs/xdg-desktop-portal/template b/srcpkgs/xdg-desktop-portal/template
index eb8a4602f5d..1136b6a6e0e 100644
--- a/srcpkgs/xdg-desktop-portal/template
+++ b/srcpkgs/xdg-desktop-portal/template
@@ -1,10 +1,10 @@
 # Template file for 'xdg-desktop-portal'
 pkgname=xdg-desktop-portal
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-pipewire --enable-geoclue --disable-libportal"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="automake libtool gettext-devel pkg-config glib-devel"
 makedepends="flatpak-devel fuse-devel pipewire-devel geoclue2-devel"
 short_desc="Portal frontend service for Flatpak"
 maintainer="Duncaen <duncaen@voidlinux.org>"
@@ -13,6 +13,10 @@ homepage="https://github.com/flatpak/xdg-desktop-portal"
 distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"
 checksum=883c9c9a925e48af54812b5347f546dd776ec2e27076a83d5a8126af6bafb9da
 
+pre_configure() {
+	autoreconf -vfi
+}
+
 post_install() {
 	rm -rf "${DESTDIR}/usr/lib/systemd"
 }

From b797c5db2a2744dbf4188200f3a8032a40935b49 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 04/41] xdg-desktop-portal-gtk: update to 1.7.1.

[ci skip]
---
 srcpkgs/xdg-desktop-portal-gtk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..c711ad15334 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,6 +1,6 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
-version=1.6.0
+version=1.7.1
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
@@ -12,7 +12,7 @@ maintainer="Duncaen <duncaen@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://github.com/flatpak/xdg-desktop-portal-gtk"
 distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"
-checksum=956fd16608247e7119d4c6d95a6dc6578dce257d2f272d03b3498572257e2f76
+checksum=b6f6d28451e89488dc1121be9355f06686546f869b8d1a2d607c2f63bbd8bb5e
 
 post_install() {
 	rm -rf "${DESTDIR}/usr/lib/systemd"

From 31514228e0c52feb7c68665b6b269fb0fa4f9f98 Mon Sep 17 00:00:00 2001
From: Kridsada Thanabulpong <sirn@ogsite.net>
Date: Thu, 30 Apr 2020 06:17:17 +0900
Subject: [PATCH 05/41] mutter: rebuild for pipewire-0.3

[ci skip]
---
 srcpkgs/mutter/patches/pipewire-0.3.patch | 521 ++++++++++++++++++++++
 srcpkgs/mutter/template                   |   2 +-
 2 files changed, 522 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/mutter/patches/pipewire-0.3.patch

diff --git a/srcpkgs/mutter/patches/pipewire-0.3.patch b/srcpkgs/mutter/patches/pipewire-0.3.patch
new file mode 100644
index 00000000000..ebff65fba85
--- /dev/null
+++ b/srcpkgs/mutter/patches/pipewire-0.3.patch
@@ -0,0 +1,521 @@
+Build mutter against pipewire-0.3, based on a patch at:
+https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1062
+--- meson.build
++++ meson.build
+@@ -50,7 +50,7 @@ libinput_req = '>= 1.7'
+ gbm_req = '>= 10.3'
+
+ # screen cast version requirements
+-libpipewire_req = '>= 0.2.5'
++libpipewire_req = '>= 0.3.0'
+
+ gnome = import('gnome')
+ pkg = import('pkgconfig')
+@@ -241,7 +241,7 @@ endif
+
+ have_remote_desktop = get_option('remote_desktop')
+ if have_remote_desktop
+-  libpipewire_dep = dependency('libpipewire-0.2', version: libpipewire_req)
++  libpipewire_dep = dependency('libpipewire-0.3', version: libpipewire_req)
+ endif
+
+ have_introspection = get_option('introspection')
+diff --git a/src/backends/meta-screen-cast-stream-src.c b/src/backends/meta-screen-cast-stream-src.c
+index 82c5cba436..ba1ce94a7e 100644
+--- src/backends/meta-screen-cast-stream-src.c
++++ src/backends/meta-screen-cast-stream-src.c
+@@ -29,6 +29,7 @@
+ #include <spa/param/props.h>
+ #include <spa/param/format-utils.h>
+ #include <spa/param/video/format-utils.h>
++#include <spa/utils/result.h>
+ #include <stdint.h>
+ #include <sys/mman.h>
+
+@@ -62,15 +63,6 @@ enum
+
+ static guint signals[N_SIGNALS];
+
+-typedef struct _MetaSpaType
+-{
+-  struct spa_type_media_type media_type;
+-  struct spa_type_media_subtype media_subtype;
+-  struct spa_type_format_video format_video;
+-  struct spa_type_video_format video_format;
+-  uint32_t meta_cursor;
+-} MetaSpaType;
+-
+ typedef struct _MetaPipeWireSource
+ {
+   GSource base;
+@@ -82,19 +74,19 @@ typedef struct _MetaScreenCastStreamSrcPrivate
+ {
+   MetaScreenCastStream *stream;
+
++  struct pw_context *pipewire_context;
+   struct pw_core *pipewire_core;
+-  struct pw_remote *pipewire_remote;
+-  struct pw_type *pipewire_type;
+   MetaPipeWireSource *pipewire_source;
+-  struct spa_hook pipewire_remote_listener;
++  struct spa_hook pipewire_core_listener;
+
+   gboolean is_enabled;
+
+   struct pw_stream *pipewire_stream;
+   struct spa_hook pipewire_stream_listener;
++  uint32_t node_id;
+
+-  MetaSpaType spa_type;
+   struct spa_video_info_raw video_format;
++  int video_stride;
+
+   uint64_t last_frame_timestamp_us;
+
+@@ -112,8 +104,6 @@ G_DEFINE_TYPE_WITH_CODE (MetaScreenCastStreamSrc,
+                                                 meta_screen_cast_stream_src_init_initable_iface)
+                          G_ADD_PRIVATE (MetaScreenCastStreamSrc))
+
+-#define PROP_RANGE(min, max) 2, (min), (max)
+-
+ static void
+ meta_screen_cast_stream_src_get_specs (MetaScreenCastStreamSrc *src,
+                                        int                     *width,
+@@ -286,9 +276,6 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
+                                                               int                      x,
+                                                               int                      y)
+ {
+-  MetaScreenCastStreamSrcPrivate *priv =
+-    meta_screen_cast_stream_src_get_instance_private (src);
+-  MetaSpaType *spa_type = &priv->spa_type;
+   struct spa_meta_bitmap *spa_meta_bitmap;
+
+   spa_meta_cursor->id = 1;
+@@ -300,7 +287,7 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
+   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
+                                 spa_meta_cursor->bitmap_offset,
+                                 struct spa_meta_bitmap);
+-  spa_meta_bitmap->format = spa_type->video_format.RGBA;
++  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
+   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
+
+   spa_meta_cursor->hotspot.x = 0;
+@@ -317,9 +304,6 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
+                                                         int                      y,
+                                                         float                    scale)
+ {
+-  MetaScreenCastStreamSrcPrivate *priv =
+-    meta_screen_cast_stream_src_get_instance_private (src);
+-  MetaSpaType *spa_type = &priv->spa_type;
+   CoglTexture *cursor_texture;
+   struct spa_meta_bitmap *spa_meta_bitmap;
+   int hotspot_x, hotspot_y;
+@@ -346,7 +330,7 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
+   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
+                                 spa_meta_cursor->bitmap_offset,
+                                 struct spa_meta_bitmap);
+-  spa_meta_bitmap->format = spa_type->video_format.RGBA;
++  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
+   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
+
+   meta_cursor_sprite_get_hotspot (cursor_sprite, &hotspot_x, &hotspot_y);
+@@ -382,12 +366,10 @@ static void
+ add_cursor_metadata (MetaScreenCastStreamSrc *src,
+                      struct spa_buffer       *spa_buffer)
+ {
+-  MetaScreenCastStreamSrcPrivate *priv =
+-    meta_screen_cast_stream_src_get_instance_private (src);
+-  MetaSpaType *spa_type = &priv->spa_type;
+   struct spa_meta_cursor *spa_meta_cursor;
+
+-  spa_meta_cursor = spa_buffer_find_meta (spa_buffer, spa_type->meta_cursor);
++  spa_meta_cursor = spa_buffer_find_meta_data (spa_buffer, SPA_META_Cursor,
++                                               sizeof (*spa_meta_cursor));
+   if (spa_meta_cursor)
+     meta_screen_cast_stream_src_set_cursor_metadata (src, spa_meta_cursor);
+ }
+@@ -447,14 +429,14 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
+     {
+       data = spa_buffer->datas[0].data;
+     }
+-  else if (spa_buffer->datas[0].type == priv->pipewire_type->data.MemFd)
++  else if (spa_buffer->datas[0].type == SPA_DATA_MemFd)
+     {
+       map = mmap (NULL, spa_buffer->datas[0].maxsize + spa_buffer->datas[0].mapoffset,
+                   PROT_READ | PROT_WRITE, MAP_SHARED,
+                   spa_buffer->datas[0].fd, 0);
+       if (map == MAP_FAILED)
+         {
+-          g_warning ("Failed to mmap pipewire stream buffer: %s\n",
++          g_warning ("Failed to mmap pipewire stream buffer: %s",
+                      strerror (errno));
+           return;
+         }
+@@ -469,28 +451,30 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
+
+   if (meta_screen_cast_stream_src_record_frame (src, data))
+     {
+-      struct spa_meta_video_crop *spa_meta_video_crop;
++      struct spa_meta_region *spa_meta_video_crop;
+
+       spa_buffer->datas[0].chunk->size = spa_buffer->datas[0].maxsize;
++      spa_buffer->datas[0].chunk->stride = priv->video_stride;
+
+       /* Update VideoCrop if needed */
+       spa_meta_video_crop =
+-        spa_buffer_find_meta (spa_buffer, priv->pipewire_type->meta.VideoCrop);
++        spa_buffer_find_meta_data (spa_buffer, SPA_META_VideoCrop,
++                                   sizeof (*spa_meta_video_crop));
+       if (spa_meta_video_crop)
+         {
+           if (meta_screen_cast_stream_src_get_videocrop (src, &crop_rect))
+             {
+-              spa_meta_video_crop->x = crop_rect.x;
+-              spa_meta_video_crop->y = crop_rect.y;
+-              spa_meta_video_crop->width = crop_rect.width;
+-              spa_meta_video_crop->height = crop_rect.height;
++              spa_meta_video_crop->region.position.x = crop_rect.x;
++              spa_meta_video_crop->region.position.y = crop_rect.y;
++              spa_meta_video_crop->region.size.width = crop_rect.width;
++              spa_meta_video_crop->region.size.height = crop_rect.height;
+             }
+           else
+             {
+-              spa_meta_video_crop->x = 0;
+-              spa_meta_video_crop->y = 0;
+-              spa_meta_video_crop->width = priv->stream_width;
+-              spa_meta_video_crop->height = priv->stream_height;
++              spa_meta_video_crop->region.position.x = 0;
++              spa_meta_video_crop->region.position.y = 0;
++              spa_meta_video_crop->region.size.width = priv->stream_width;
++              spa_meta_video_crop->region.size.height = priv->stream_height;
+             }
+         }
+     }
+@@ -555,7 +539,6 @@ on_stream_state_changed (void                 *data,
+   MetaScreenCastStreamSrc *src = data;
+   MetaScreenCastStreamSrcPrivate *priv =
+     meta_screen_cast_stream_src_get_instance_private (src);
+-  uint32_t node_id;
+
+   switch (state)
+     {
+@@ -563,14 +546,12 @@ on_stream_state_changed (void                 *data,
+       g_warning ("pipewire stream error: %s", error_message);
+       meta_screen_cast_stream_src_notify_closed (src);
+       break;
+-    case PW_STREAM_STATE_CONFIGURE:
+-      node_id = pw_stream_get_node_id (priv->pipewire_stream);
+-      g_signal_emit (src, signals[READY], 0, (unsigned int) node_id);
+-      break;
+-    case PW_STREAM_STATE_UNCONNECTED:
+-    case PW_STREAM_STATE_CONNECTING:
+-    case PW_STREAM_STATE_READY:
+     case PW_STREAM_STATE_PAUSED:
++      if (priv->node_id == SPA_ID_INVALID && priv->pipewire_stream)
++        {
++          priv->node_id = pw_stream_get_node_id (priv->pipewire_stream);
++          g_signal_emit (src, signals[READY], 0, (unsigned int) priv->node_id);
++        }
+       if (meta_screen_cast_stream_src_is_enabled (src))
+         meta_screen_cast_stream_src_disable (src);
+       break;
+@@ -578,68 +559,69 @@ on_stream_state_changed (void                 *data,
+       if (!meta_screen_cast_stream_src_is_enabled (src))
+         meta_screen_cast_stream_src_enable (src);
+       break;
++    case PW_STREAM_STATE_UNCONNECTED:
++    case PW_STREAM_STATE_CONNECTING:
++      break;
+     }
+ }
+
+ static void
+-on_stream_format_changed (void                 *data,
+-                          const struct spa_pod *format)
++on_stream_param_changed (void                 *data,
++                         uint32_t              id,
++                         const struct spa_pod *format)
+ {
+   MetaScreenCastStreamSrc *src = data;
+   MetaScreenCastStreamSrcPrivate *priv =
+     meta_screen_cast_stream_src_get_instance_private (src);
+-  struct pw_type *pipewire_type = priv->pipewire_type;
+   uint8_t params_buffer[1024];
+   int32_t width, height, stride, size;
+   struct spa_pod_builder pod_builder;
+   const struct spa_pod *params[3];
+   const int bpp = 4;
+
+-  if (!format)
+-    {
+-      pw_stream_finish_format (priv->pipewire_stream, 0, NULL, 0);
+-      return;
+-    }
++  if (!format || id != SPA_PARAM_Format)
++    return;
+
+   spa_format_video_raw_parse (format,
+-                              &priv->video_format,
+-                              &priv->spa_type.format_video);
++                              &priv->video_format);
+
+   width = priv->video_format.size.width;
+   height = priv->video_format.size.height;
+   stride = SPA_ROUND_UP_N (width * bpp, 4);
+   size = height * stride;
+
++  priv->video_stride = stride;
++
+   pod_builder = SPA_POD_BUILDER_INIT (params_buffer, sizeof (params_buffer));
+
+-  params[0] = spa_pod_builder_object (
++  params[0] = spa_pod_builder_add_object (
+     &pod_builder,
+-    pipewire_type->param.idBuffers, pipewire_type->param_buffers.Buffers,
+-    ":", pipewire_type->param_buffers.size, "i", size,
+-    ":", pipewire_type->param_buffers.stride, "i", stride,
+-    ":", pipewire_type->param_buffers.buffers, "iru", 16, PROP_RANGE (2, 16),
+-    ":", pipewire_type->param_buffers.align, "i", 16);
+-
+-  params[1] = spa_pod_builder_object (
++    SPA_TYPE_OBJECT_ParamBuffers, SPA_PARAM_Buffers,
++    SPA_PARAM_BUFFERS_buffers, SPA_POD_CHOICE_RANGE_Int (16, 2, 16),
++    SPA_PARAM_BUFFERS_blocks, SPA_POD_Int (1),
++    SPA_PARAM_BUFFERS_size, SPA_POD_Int (size),
++    SPA_PARAM_BUFFERS_stride, SPA_POD_Int (stride),
++    SPA_PARAM_BUFFERS_align, SPA_POD_Int (16));
++
++  params[1] = spa_pod_builder_add_object (
+     &pod_builder,
+-    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
+-    ":", pipewire_type->param_meta.type, "I", pipewire_type->meta.VideoCrop,
+-    ":", pipewire_type->param_meta.size, "i", sizeof (struct spa_meta_video_crop));
++    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
++    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_VideoCrop),
++    SPA_PARAM_META_size, SPA_POD_Int (sizeof (struct spa_meta_region)));
+
+-  params[2] = spa_pod_builder_object (
++  params[2] = spa_pod_builder_add_object (
+     &pod_builder,
+-    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
+-    ":", pipewire_type->param_meta.type, "I", priv->spa_type.meta_cursor,
+-    ":", pipewire_type->param_meta.size, "i", CURSOR_META_SIZE (64, 64));
++    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
++    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_Cursor),
++    SPA_PARAM_META_size, SPA_POD_Int (CURSOR_META_SIZE (64, 64)));
+
+-  pw_stream_finish_format (priv->pipewire_stream, 0,
+-                           params, G_N_ELEMENTS (params));
++  pw_stream_update_params (priv->pipewire_stream, params, G_N_ELEMENTS (params));
+ }
+
+ static const struct pw_stream_events stream_events = {
+   PW_VERSION_STREAM_EVENTS,
+   .state_changed = on_stream_state_changed,
+-  .format_changed = on_stream_format_changed,
++  .param_changed = on_stream_param_changed,
+ };
+
+ static struct pw_stream *
+@@ -652,8 +634,6 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
+   uint8_t buffer[1024];
+   struct spa_pod_builder pod_builder =
+     SPA_POD_BUILDER_INIT (buffer, sizeof (buffer));
+-  MetaSpaType *spa_type = &priv->spa_type;
+-  struct pw_type *pipewire_type = priv->pipewire_type;
+   float frame_rate;
+   MetaFraction frame_rate_fraction;
+   struct spa_fraction max_framerate;
+@@ -661,7 +641,9 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
+   const struct spa_pod *params[1];
+   int result;
+
+-  pipewire_stream = pw_stream_new (priv->pipewire_remote,
++  priv->node_id = SPA_ID_INVALID;
++
++  pipewire_stream = pw_stream_new (priv->pipewire_core,
+                                    "meta-screen-cast-src",
+                                    NULL);
+   if (!pipewire_stream)
+@@ -682,17 +664,17 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
+   max_framerate = SPA_FRACTION (frame_rate_fraction.num,
+                                 frame_rate_fraction.denom);
+
+-  params[0] = spa_pod_builder_object (
++  params[0] = spa_pod_builder_add_object (
+     &pod_builder,
+-    pipewire_type->param.idEnumFormat, pipewire_type->spa_format,
+-    "I", spa_type->media_type.video,
+-    "I", spa_type->media_subtype.raw,
+-    ":", spa_type->format_video.format, "I", spa_type->video_format.BGRx,
+-    ":", spa_type->format_video.size, "R", &SPA_RECTANGLE (priv->stream_width,
+-                                                           priv->stream_height),
+-    ":", spa_type->format_video.framerate, "F", &SPA_FRACTION (0, 1),
+-    ":", spa_type->format_video.max_framerate, "Fru", &max_framerate,
+-                                                      PROP_RANGE (&min_framerate,
++    SPA_TYPE_OBJECT_Format, SPA_PARAM_EnumFormat,
++    SPA_FORMAT_mediaType, SPA_POD_Id (SPA_MEDIA_TYPE_video),
++    SPA_FORMAT_mediaSubtype, SPA_POD_Id (SPA_MEDIA_SUBTYPE_raw),
++    SPA_FORMAT_VIDEO_format, SPA_POD_Id (SPA_VIDEO_FORMAT_BGRx),
++    SPA_FORMAT_VIDEO_size, SPA_POD_Rectangle (&SPA_RECTANGLE (priv->stream_width,
++                                                              priv->stream_height)),
++    SPA_FORMAT_VIDEO_framerate, SPA_POD_Fraction (&SPA_FRACTION (0, 1)),
++    SPA_FORMAT_VIDEO_maxFramerate, SPA_POD_CHOICE_RANGE_Fraction (&max_framerate,
++                                                                  &min_framerate,
+                                                                   &max_framerate));
+
+   pw_stream_add_listener (pipewire_stream,
+@@ -702,7 +684,7 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
+
+   result = pw_stream_connect (pipewire_stream,
+                               PW_DIRECTION_OUTPUT,
+-                              NULL,
++                              SPA_ID_INVALID,
+                               (PW_STREAM_FLAG_DRIVER |
+                                PW_STREAM_FLAG_MAP_BUFFERS),
+                               params, G_N_ELEMENTS (params));
+@@ -717,40 +699,18 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
+ }
+
+ static void
+-on_state_changed (void                 *data,
+-                  enum pw_remote_state  old,
+-                  enum pw_remote_state  state,
+-                  const char           *error_message)
++on_core_error (void       *data,
++               uint32_t    id,
++	       int         seq,
++	       int         res,
++	       const char *message)
+ {
+   MetaScreenCastStreamSrc *src = data;
+-  MetaScreenCastStreamSrcPrivate *priv =
+-    meta_screen_cast_stream_src_get_instance_private (src);
+-  struct pw_stream *pipewire_stream;
+-  GError *error = NULL;
+
+-  switch (state)
+-    {
+-    case PW_REMOTE_STATE_ERROR:
+-      g_warning ("pipewire remote error: %s\n", error_message);
+-      meta_screen_cast_stream_src_notify_closed (src);
+-      break;
+-    case PW_REMOTE_STATE_CONNECTED:
+-      pipewire_stream = create_pipewire_stream (src, &error);
+-      if (!pipewire_stream)
+-        {
+-          g_warning ("Could not create pipewire stream: %s", error->message);
+-          g_error_free (error);
+-          meta_screen_cast_stream_src_notify_closed (src);
+-        }
+-      else
+-        {
+-          priv->pipewire_stream = pipewire_stream;
+-        }
+-      break;
+-    case PW_REMOTE_STATE_UNCONNECTED:
+-    case PW_REMOTE_STATE_CONNECTING:
+-      break;
+-    }
++  g_warning ("pipewire remote error: id:%u %s", id, message);
++
++  if (id == PW_ID_CORE && res == -EPIPE)
++    meta_screen_cast_stream_src_notify_closed (src);
+ }
+
+ static gboolean
+@@ -793,17 +753,6 @@ static GSourceFuncs pipewire_source_funcs =
+   pipewire_loop_source_finalize
+ };
+
+-static void
+-init_spa_type (MetaSpaType         *type,
+-               struct spa_type_map *map)
+-{
+-  spa_type_media_type_map (map, &type->media_type);
+-  spa_type_media_subtype_map (map, &type->media_subtype);
+-  spa_type_format_video_map (map, &type->format_video);
+-  spa_type_video_format_map (map, &type->video_format);
+-  type->meta_cursor = spa_type_map_get_id(map, SPA_TYPE_META__Cursor);
+-}
+-
+ static MetaPipeWireSource *
+ create_pipewire_source (void)
+ {
+@@ -829,9 +778,9 @@ create_pipewire_source (void)
+   return pipewire_source;
+ }
+
+-static const struct pw_remote_events remote_events = {
+-  PW_VERSION_REMOTE_EVENTS,
+-  .state_changed = on_state_changed,
++static const struct pw_core_events core_events = {
++  PW_VERSION_CORE_EVENTS,
++  .error = on_core_error,
+ };
+
+ static gboolean
+@@ -851,37 +800,31 @@ meta_screen_cast_stream_src_initable_init (GInitable     *initable,
+       return FALSE;
+     }
+
+-  priv->pipewire_core = pw_core_new (priv->pipewire_source->pipewire_loop,
+-                                     NULL);
+-  if (!priv->pipewire_core)
++  priv->pipewire_context = pw_context_new (priv->pipewire_source->pipewire_loop,
++                                           NULL, 0);
++  if (!priv->pipewire_context)
+     {
+       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+-                   "Failed to create pipewire core");
++                   "Failed to create pipewire context");
+       return FALSE;
+     }
+
+-  priv->pipewire_remote = pw_remote_new (priv->pipewire_core, NULL, 0);
+-  if (!priv->pipewire_remote)
++  priv->pipewire_core = pw_context_connect (priv->pipewire_context, NULL, 0);
++  if (!priv->pipewire_core)
+     {
+       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+-                   "Couldn't creat pipewire remote");
++                   "Couldn't connect pipewire context");
+       return FALSE;
+     }
+
+-  pw_remote_add_listener (priv->pipewire_remote,
+-                          &priv->pipewire_remote_listener,
+-                          &remote_events,
+-                          src);
++  pw_core_add_listener (priv->pipewire_core,
++                        &priv->pipewire_core_listener,
++                        &core_events,
++                        src);
+
+-  priv->pipewire_type = pw_core_get_type (priv->pipewire_core);
+-  init_spa_type (&priv->spa_type, priv->pipewire_type->map);
+-
+-  if (pw_remote_connect (priv->pipewire_remote) != 0)
+-    {
+-      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+-                   "Couldn't connect pipewire remote");
+-      return FALSE;
+-    }
++  priv->pipewire_stream = create_pipewire_stream (src, error);
++  if (!priv->pipewire_stream)
++    return FALSE;
+
+   return TRUE;
+ }
+@@ -912,8 +855,8 @@ meta_screen_cast_stream_src_finalize (GObject *object)
+     meta_screen_cast_stream_src_disable (src);
+
+   g_clear_pointer (&priv->pipewire_stream, pw_stream_destroy);
+-  g_clear_pointer (&priv->pipewire_remote, pw_remote_destroy);
+-  g_clear_pointer (&priv->pipewire_core, pw_core_destroy);
++  g_clear_pointer (&priv->pipewire_core, pw_core_disconnect);
++  g_clear_pointer (&priv->pipewire_context, pw_context_destroy);
+   g_source_destroy (&priv->pipewire_source->base);
+
+   G_OBJECT_CLASS (meta_screen_cast_stream_src_parent_class)->finalize (object);
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..806a3bef9f0 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,7 +1,7 @@
 # Template file for 'mutter'
 pkgname=mutter
 version=3.34.1
-revision=2
+revision=3
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true

From e68a3a22d714dfe0bec8f4216298ffd896518a45 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 06/41] gnome-desktop: update to 3.36.2.

[ci skip]
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 0b58777db72..7e93ace253f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1177,7 +1177,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 14a51a6be3cbdc5f3ad62d8a2dbcd3cf5d663da4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 07/41] nautilus: update to 3.36.2.

[ci skip]
---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From a1e0947c27d6f0759c969742e3d74e7a929f0b0c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 08/41] gnome-2048: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 5c4418986b974edf10efc66148c4a189f67bc10d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 09/41] gnome-music: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 14e6c34acb6f81a766e6ff4ced1d486c1b8bfd50 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 10/41] devhelp: update to 3.36.2.

[ci skip]
---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 439b8a86d07fcd5577e254b720c759741530644a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 11/41] eog: update to 3.36.2.

[ci skip]
---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 670b878de25f16fe0ee7bf3701d7834a8a8465f9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 12/41] gnome-maps: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 3f5b05f2d6fcd84f293995b0bc118dec0727bfcc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 13/41] gedit: update to 3.36.2.

[ci skip]
---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From ad0517e92f2f7436ed1fe095d3ed26c67432d578 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 14/41] gnome-contacts: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 88785c54e22807a39d91e146f0f43b22a0276bbf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 15/41] gnome-epub-thumbnailer: update to 1.6.

[ci skip]
---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 270da823ae4be967d589cb236bde6a62bc5edabe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:12:06 +0600
Subject: [PATCH 16/41] vte3: update to 0.60.2.

[ci skip]
---
 srcpkgs/vte3/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/vte3/template b/srcpkgs/vte3/template
index 2ab15918d3b..85f4d2db9cd 100644
--- a/srcpkgs/vte3/template
+++ b/srcpkgs/vte3/template
@@ -1,6 +1,6 @@
 # Template file for 'vte3'
 pkgname=vte3
-version=0.60.1
+version=0.60.2
 revision=1
 wrksrc="vte-${version}"
 build_style=meson
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later, LGPL-2.1-or-later, LGPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Terminal/VTE"
 distfiles="${GNOME_SITE}/vte/${version%.*}/vte-${version}.tar.xz"
-checksum=5e25807233f8a7e15204be7ff694bbcf6facbb0136092b5ba12584a7b70cf0c4
+checksum=35a0280e3f12feeb3096da05699191373c47a4a20c55cb7081e828e6015f8ca5
 
 # Suppress warnings as errors for NULL format strings (musl libc)
 CXXFLAGS="-Wno-error=format="

From 8b792d45c404117c3b4b258386f365af8dfe5f1a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 17/41] gnome-terminal: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 268aa06c075fa6639d246e6a048dd23251eb4d9f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 18/41] gnome-podcasts: update to 0.4.7.

[ci skip]
---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 1d1148d041809ed53e8c875c3c3f47e9e574176d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 19/41] gnome-control-center: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-control-center/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..b1913f66a8b 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.1
 revision=1
 build_style=meson
 build_helper="gir"
@@ -24,7 +24,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=f3e32d1cff7ec2fc42c2db2c7f61274d476d3a49aae10040f57217ee25d7c690
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"

From 7c0c81b9043717f4aa837438ec0489d336307c58 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 20/41] gnome-user-docs: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 786f9fcfc3d8bd07bec4307166b09a3a172eb0f6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 21/41] evolution-data-server: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From a23666d5174dcad3dfed91b308b5b2c912af2b15 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 22/41] evolution: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 04dbe2eccf7c4678d213119d24358a30cbe6f352 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 23/41] evolution-ews: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 1e8c535c7e13f0c400eb4ea8abf37fb31a6558f3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 24/41] file-roller: update to 3.36.2.

[ci skip]
---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From a96a4c6943b3286d41a7fe6422bcc96fe0f3c15d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 25/41] polari: update to 3.36.2.

[ci skip]
---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From 5ddc4cfa7dcd4d4743c8c6f00394f889715b55cc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 26/41] gnome-panel: update to 3.36.1.

[ci skip]
---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 7e93ace253f..f9bb4b20f70 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -566,7 +566,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From c1fed7df0789060f3954bf516dcc4c683d973aad Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 27/41] metacity: update to 3.36.1.

[ci skip]
---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index f9bb4b20f70..badedf8a9fa 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -568,6 +568,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 032928e1a3fde7f92df6a16f77e4f8079b1498e6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 28/41] gnome-menus: update to 3.36.0.

[ci skip]
---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From a4e74bb0d9ae7dc693477ff95edf1dcca900e037 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 29/41] gnome-flashback: update to 3.36.1.

[ci skip]
---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 20 +++++++------
 2 files changed, 40 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..d11df407257 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.1
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=5d289390d754639f737ab7bf173f6d5c8388459259314bb7463109598bb5f399
+
+pre_configure() {
+	autoreconf -vfi
+}

From 4094b9da643d3cc56d2b1e5e269414b4fc084c39 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 30/41] graphene: update to 1.10.0.

[ci skip]
---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From da532fa0ed558278d1fa2e05389e8443f3e02140 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 31/41] mutter: update to 3.36.1.

[ci skip]
---
 common/shlibs                                 | 18 ++++++++---------
 .../patches/fix-cogl-egl-includes.patch       | 11 ----------
 srcpkgs/mutter/template                       | 20 +++++++++----------
 3 files changed, 19 insertions(+), 30 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index badedf8a9fa..66320bd3c21 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2928,15 +2928,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 806a3bef9f0..7c4d4c66319 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,25 +1,25 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=3582454ea1bab0e8d2fa3c3f44c5b1bc2ced1c9e7a45a1806107b40250d2d825
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
 	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
@@ -28,7 +28,7 @@ mutter-devel_package() {
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From d9cfcf406153554d5df163ba6c82c67db1e89d8f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 12:53:16 +0600
Subject: [PATCH 32/41] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/budgie-desktop/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..ae5a9d5f769 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,7 +1,7 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"

From 43408e55b03960f54c5b586557e310a05967e187 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 33/41] cheese: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From c9a1c8c09a2d77e594dff81853e8ad6802964cb5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 34/41] gnome-books: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From aca55d19dd6d7bf5d26137834d53aab904bac960 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 35/41] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 8d9cb395b9440089696a59ee417a1f0616d71e37 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 36/41] gnome-clocks: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From f9d12b486ed473f10812c5c0b8ca8bb0b562ce1c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 37/41] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 7c5d487a6ac39c2d290d086d4ea6874330c8320d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 38/41] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From abe3c250a7b74ca365ae3686b774b685c7c2a888 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 39/41] totem: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 7f76b9275d2641fe8bca92cea0f8f2afc58a33a8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 40/41] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From 67eed9f22fd47d19f16cf01739cd260cf2e2e878 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 41/41] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (11 preceding siblings ...)
  2020-05-01  8:19 ` [PR PATCH] [Updated] " mnabid
@ 2020-05-01  8:28 ` mnabid
  2020-05-01  8:46 ` mnabid
                   ` (74 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-01  8:28 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 362 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for `pipewire-0.3.4` to be merged (#20413) .

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 48806 bytes --]

From 6c58f6ec2d64e8c6e633e89c3f8e601db7bba9c8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 01/37] xdg-desktop-portal-gtk: update to 1.7.1.

[ci skip]
---
 srcpkgs/xdg-desktop-portal-gtk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..c711ad15334 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,6 +1,6 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
-version=1.6.0
+version=1.7.1
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
@@ -12,7 +12,7 @@ maintainer="Duncaen <duncaen@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://github.com/flatpak/xdg-desktop-portal-gtk"
 distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"
-checksum=956fd16608247e7119d4c6d95a6dc6578dce257d2f272d03b3498572257e2f76
+checksum=b6f6d28451e89488dc1121be9355f06686546f869b8d1a2d607c2f63bbd8bb5e
 
 post_install() {
 	rm -rf "${DESTDIR}/usr/lib/systemd"

From 05bf3abfefd8dfd0610db5e1df6b776b296116e2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 02/37] gnome-desktop: update to 3.36.2.

[ci skip]
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index a208407b359..77a4b1d5425 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1177,7 +1177,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 11eb009361a62ee6c5bc83bd13b236d471df34c5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/37] nautilus: update to 3.36.2.

[ci skip]
---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From 684112c87f83837e11345e82de5c58cadd4dfaef Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/37] gnome-2048: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From d4d4f3f03bbcd07d640b0818905e08f30e85be2d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/37] gnome-music: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 87fcae607740128b15dfbb90afcc808b0faf6f3c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/37] devhelp: update to 3.36.2.

[ci skip]
---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 970c37e5ab650151fb501c44b09d663e6af36261 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/37] eog: update to 3.36.2.

[ci skip]
---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 4f8454961411257f679927d3f9d85d74b07c437c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 08/37] gnome-maps: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 183c2e3fef81a82ce7abf80ea71658593ae8ab0e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 09/37] gedit: update to 3.36.2.

[ci skip]
---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From aedc3a91b2e0de5f92be3bb62d23c35c74a07a23 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 10/37] gnome-contacts: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 9c978a11e022f2bc0c273dc207ecf450dd4c536b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 11/37] gnome-epub-thumbnailer: update to 1.6.

[ci skip]
---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 0faedd49421e38d9cf49e47fc1e0adc87bea8b4c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:12:06 +0600
Subject: [PATCH 12/37] vte3: update to 0.60.2.

[ci skip]
---
 srcpkgs/vte3/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/vte3/template b/srcpkgs/vte3/template
index 2ab15918d3b..85f4d2db9cd 100644
--- a/srcpkgs/vte3/template
+++ b/srcpkgs/vte3/template
@@ -1,6 +1,6 @@
 # Template file for 'vte3'
 pkgname=vte3
-version=0.60.1
+version=0.60.2
 revision=1
 wrksrc="vte-${version}"
 build_style=meson
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later, LGPL-2.1-or-later, LGPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Terminal/VTE"
 distfiles="${GNOME_SITE}/vte/${version%.*}/vte-${version}.tar.xz"
-checksum=5e25807233f8a7e15204be7ff694bbcf6facbb0136092b5ba12584a7b70cf0c4
+checksum=35a0280e3f12feeb3096da05699191373c47a4a20c55cb7081e828e6015f8ca5
 
 # Suppress warnings as errors for NULL format strings (musl libc)
 CXXFLAGS="-Wno-error=format="

From 95dc945a94416ac59a99f896ad1d1099ddc81fa4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 13/37] gnome-terminal: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 8ae3716e421fce7e2b99e8edc2e5ca337b4b4763 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 14/37] gnome-podcasts: update to 0.4.7.

[ci skip]
---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 0bbd22bf889922d4b4702be9bbd33bd3c6ec44df Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 15/37] gnome-control-center: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-control-center/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..b1913f66a8b 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.1
 revision=1
 build_style=meson
 build_helper="gir"
@@ -24,7 +24,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=f3e32d1cff7ec2fc42c2db2c7f61274d476d3a49aae10040f57217ee25d7c690
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"

From 87df8f70981f82cadac6bbdbc394adb3f4fee7de Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 16/37] gnome-user-docs: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 23a837eeccb816eabe26cdb93addae5d5ce03415 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 17/37] evolution-data-server: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 28b492321dec417f836bbee27ada2f4f8537df62 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 18/37] evolution: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 6486c278d5d9069497b7c8e5115678da00cd79d1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 19/37] evolution-ews: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 063e851cca000fa7879de110befd8d42d95375bd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 20/37] file-roller: update to 3.36.2.

[ci skip]
---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From a9b443ed589b56dc13deac5d6ed9b13366c21340 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 21/37] polari: update to 3.36.2.

[ci skip]
---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From dcfbe28f229671d609163a352af2d6dc7ff80f8d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 22/37] gnome-panel: update to 3.36.1.

[ci skip]
---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 77a4b1d5425..324bb3e4610 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -566,7 +566,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From ee92689727f7fd541efc306571bb7e1e46d3f388 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 23/37] metacity: update to 3.36.1.

[ci skip]
---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 324bb3e4610..04352c8c19b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -568,6 +568,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 875df4200f8020f5b43793b798816228431db7c9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 24/37] gnome-menus: update to 3.36.0.

[ci skip]
---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 1a8cd9cd803894fbc12e287adf2a406824d36cb9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 25/37] gnome-flashback: update to 3.36.1.

[ci skip]
---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 20 +++++++------
 2 files changed, 40 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..d11df407257 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.1
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=5d289390d754639f737ab7bf173f6d5c8388459259314bb7463109598bb5f399
+
+pre_configure() {
+	autoreconf -vfi
+}

From dfb9d78a16dcca15eb460ae879c194576205fb90 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 26/37] graphene: update to 1.10.0.

[ci skip]
---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 3bbae238dabc80a1f0eb0ef797133141be895c3a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 27/37] mutter: update to 3.36.1.

[ci skip]
---
 common/shlibs                                 | 18 ++++++++---------
 .../patches/fix-cogl-egl-includes.patch       | 11 ----------
 srcpkgs/mutter/template                       | 20 +++++++++----------
 3 files changed, 19 insertions(+), 30 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 04352c8c19b..f7bdd8d92d5 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2928,15 +2928,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..7c4d4c66319 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,25 +1,25 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=3582454ea1bab0e8d2fa3c3f44c5b1bc2ced1c9e7a45a1806107b40250d2d825
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
 	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
@@ -28,7 +28,7 @@ mutter-devel_package() {
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From daf8bdcd5ea35835068e67d212c701df6c0eccf2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 12:53:16 +0600
Subject: [PATCH 28/37] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/budgie-desktop/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..ae5a9d5f769 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,7 +1,7 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"

From 66024fd6be482bbe45314cb43d497f49866c4019 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 29/37] cheese: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From f5a37acbd8905a01a29854e60221a920169410b9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 30/37] gnome-books: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 8bc5a9a8ef8b603229b62788ac934539c481ecc2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 31/37] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From fcd7c802f832dad751ccf981022f1e27361564eb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 32/37] gnome-clocks: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From 6658d9cfd9d3860cedd1aa9b47218308a636ebd5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 33/37] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From c330199f2cedfb1b537fb56471ec0ee06c68dcc8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 34/37] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From d7f7262f53d861c063e941871372aaa987c7eb23 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 35/37] totem: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 8d365db8553358739462b3021380735ccb720413 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 36/37] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From 00845d9080687b9c4714f5de11eb90e207b43cfd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 37/37] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (12 preceding siblings ...)
  2020-05-01  8:28 ` mnabid
@ 2020-05-01  8:46 ` mnabid
  2020-05-02  1:16 ` mnabid
                   ` (73 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-01  8:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 362 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for `pipewire-0.3.4` to be merged (#20413) .

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 50071 bytes --]

From 65934716659b2203eba30e8ab8a0a3f47e99b93a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/37] gnome-desktop: update to 3.36.2.

[ci skip]
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index a208407b359..77a4b1d5425 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1177,7 +1177,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From b231608959a143940b4f6987e8ecd79b85d99d6e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 02/37] nautilus: update to 3.36.2.

[ci skip]
---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From 0845b4875e7dc7f0a7ef7ed82294f5cfe24d405a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 03/37] gnome-2048: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 418082c71aa0a16738d28e5ee8c669f2505d16a2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 04/37] gnome-music: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 82461ca2f5fe16e6aa5888493b60a0acb6cc814b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 05/37] devhelp: update to 3.36.2.

[ci skip]
---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 2ae77b847b091e80f63f1766aa9be355b41bd30b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 06/37] eog: update to 3.36.2.

[ci skip]
---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From d2ab6743182da71448c9c0cc26d48a8b58ea9325 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 07/37] gnome-maps: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 93dc01fb1e8bb85725eaf68136fe575b561d3e74 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 08/37] gedit: update to 3.36.2.

[ci skip]
---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 9d888b7df80ebe00c2c73e595da0689ef62611da Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 09/37] gnome-contacts: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 61273202b3d9086f4977bedd3588fc74b8e5669f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 10/37] gnome-epub-thumbnailer: update to 1.6.

[ci skip]
---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From e041a86f6eec7aa11d015a2037d5c98d781823f6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:12:06 +0600
Subject: [PATCH 11/37] vte3: update to 0.60.2.

[ci skip]
---
 srcpkgs/vte3/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/vte3/template b/srcpkgs/vte3/template
index 2ab15918d3b..85f4d2db9cd 100644
--- a/srcpkgs/vte3/template
+++ b/srcpkgs/vte3/template
@@ -1,6 +1,6 @@
 # Template file for 'vte3'
 pkgname=vte3
-version=0.60.1
+version=0.60.2
 revision=1
 wrksrc="vte-${version}"
 build_style=meson
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later, LGPL-2.1-or-later, LGPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Terminal/VTE"
 distfiles="${GNOME_SITE}/vte/${version%.*}/vte-${version}.tar.xz"
-checksum=5e25807233f8a7e15204be7ff694bbcf6facbb0136092b5ba12584a7b70cf0c4
+checksum=35a0280e3f12feeb3096da05699191373c47a4a20c55cb7081e828e6015f8ca5
 
 # Suppress warnings as errors for NULL format strings (musl libc)
 CXXFLAGS="-Wno-error=format="

From 8818b866d20fa6c7e4299c62d29c1df2f94800be Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 12/37] gnome-terminal: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 2bdf2cfe636ebe596d782e9e6445bc5a47a7bf35 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 13/37] gnome-podcasts: update to 0.4.7.

[ci skip]
---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 1eeb022f79d5683672e77f6c8cf0e7aa7920ff33 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 14/37] gnome-control-center: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-control-center/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..b1913f66a8b 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.1
 revision=1
 build_style=meson
 build_helper="gir"
@@ -24,7 +24,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=f3e32d1cff7ec2fc42c2db2c7f61274d476d3a49aae10040f57217ee25d7c690
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"

From 2e555ea73ad0945c6cf0f5b2393f6cd79e4e2dea Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 15/37] gnome-user-docs: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 880d1ea1fd41b52794a2170f6c4d14ef7d8618ad Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 16/37] evolution-data-server: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From b688e074bab2eb16fba5c7504062b03484254951 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 17/37] evolution: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From a60518aec693a85fa32c1c5270d85e7980155ac3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 18/37] evolution-ews: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From caf73d8d92771cb46407a8483e3ccfe5c2826157 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 19/37] file-roller: update to 3.36.2.

[ci skip]
---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 3c40f6c9fc790fa232dc0cafbfe487cf6131eb6c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 20/37] polari: update to 3.36.2.

[ci skip]
---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From 27c31dbba9771d437086a642ac79ecf2f31fd153 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 21/37] gnome-panel: update to 3.36.1.

[ci skip]
---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 77a4b1d5425..324bb3e4610 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -566,7 +566,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 95ab7b0aee6f33e3ac476fdc1d8e854e863e2f35 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 22/37] metacity: update to 3.36.1.

[ci skip]
---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 324bb3e4610..04352c8c19b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -568,6 +568,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 6d77417e36316f03cc8d06a432c2f404abd90f87 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 23/37] gnome-menus: update to 3.36.0.

[ci skip]
---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 6d3be4948c7bded4c171f5cdae5300f32e83eab9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 24/37] gnome-flashback: update to 3.36.1.

[ci skip]
---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 20 +++++++------
 2 files changed, 40 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..d11df407257 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.1
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=5d289390d754639f737ab7bf173f6d5c8388459259314bb7463109598bb5f399
+
+pre_configure() {
+	autoreconf -vfi
+}

From 1496995c5d4f100178e4dcfb18237c380a5ec11a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 25/37] graphene: update to 1.10.0.

[ci skip]
---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 2b9cff2a83d454a65b07ebd00a26780f60590ffb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 26/37] mutter: update to 3.36.1.

[ci skip]
---
 common/shlibs                                 | 18 ++++++++---------
 .../patches/fix-cogl-egl-includes.patch       | 11 ----------
 srcpkgs/mutter/template                       | 20 +++++++++----------
 3 files changed, 19 insertions(+), 30 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 04352c8c19b..f7bdd8d92d5 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2928,15 +2928,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..7c4d4c66319 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,25 +1,25 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=3582454ea1bab0e8d2fa3c3f44c5b1bc2ced1c9e7a45a1806107b40250d2d825
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
 	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
@@ -28,7 +28,7 @@ mutter-devel_package() {
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 853f3cac981c3e2553ce3547501552341c3d1ceb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 27/37] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 ed 35 (delta 1), pack-reused 0          | 29 +++++++++++++++++++++++++
 srcpkgs/xdg-desktop-portal-gtk/template |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 ed 35 (delta 1), pack-reused 0

diff --git a/ed 35 (delta 1), pack-reused 0 b/ed 35 (delta 1), pack-reused 0
new file mode 100644
index 00000000000..3f8c6885b2d
--- /dev/null
+++ b/ed 35 (delta 1), pack-reused 0	
@@ -0,0 +1,29 @@
+^[[33mcommit f10ac93d4002da3c943e582bd656d4cdc7d61adb^[[m^[[33m (^[[m^[[1;36mHEAD^[[m^[[33m)^[[m
+Author: Nafis <mnabid.25@outlook.com>
+Date:   Thu Apr 30 13:46:16 2020 +0600
+
+    xdg-desktop-portal-gtk: update to 1.7.1.
+    
+    [ci skip]
+
+^[[1mdiff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1mindex dee0e46338..c711ad1533 100644^[[m
+^[[1m--- a/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1m+++ b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[36m@@ -1,6 +1,6 @@^[[m
+ # Template file for 'xdg-desktop-portal-gtk'^[[m
+ pkgname=xdg-desktop-portal-gtk^[[m
+^[[31m-version=1.6.0^[[m
+^[[32m+^[[m^[[32mversion=1.7.1^[[m
+ revision=1^[[m
+ build_style=gnu-configure^[[m
+ hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"^[[m
+^[[36m@@ -12,7 +12,7 @@^[[m ^[[mmaintainer="Duncaen <duncaen@voidlinux.org>"^[[m
+ license="LGPL-2.1-or-later"^[[m
+ homepage="https://github.com/flatpak/xdg-desktop-portal-gtk"^[[m
+ distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"^[[m
+^[[31m-checksum=956fd16608247e7119d4c6d95a6dc6578dce257d2f272d03b3498572257e2f76^[[m
+^[[32m+^[[m^[[32mchecksum=b6f6d28451e89488dc1121be9355f06686546f869b8d1a2d607c2f63bbd8bb5e^[[m
+ ^[[m
+ post_install() {^[[m
+ 	rm -rf "${DESTDIR}/usr/lib/systemd"^[[m
diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 89d5f69edc7ac02a4cfb18b29500008dc32481cb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 12:53:16 +0600
Subject: [PATCH 28/37] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/budgie-desktop/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..ae5a9d5f769 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,7 +1,7 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"

From b46d66a2fc09245320cc726afb6a084af7f583a3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 29/37] cheese: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 8cc31bb1a208675779516b5d1f611ed527c84dd5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 30/37] gnome-books: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 2d5e8e069f8887bef2d594541d9949e1fed7ad6e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 31/37] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 030c1d2463083bcc87cb958b5b0e23031bbb0a94 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 32/37] gnome-clocks: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From c90e1c934b0330c609f29402a3af6b256462940b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 33/37] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From ea616571e73116926daad17d7c516c173772e5a3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 34/37] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 5b482c7d563a5759ef1e1309597fefe604f31590 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 35/37] totem: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 46ccca534d474b4cd572535f495c4f09cd62f42a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 36/37] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From a3debb9d1b8951d3aec960f74be9686cd0fdc333 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 37/37] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (13 preceding siblings ...)
  2020-05-01  8:46 ` mnabid
@ 2020-05-02  1:16 ` mnabid
  2020-05-02  1:20 ` mnabid
                   ` (72 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-02  1:16 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 362 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for `pipewire-0.3.4` to be merged (#20413) .

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 48980 bytes --]

From d221c404cfda3ff8582c299d3e14cc6278eb8224 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/36] gnome-desktop: update to 3.36.2.

[ci skip]
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 9fb74043e9f..c0fdc2e01a9 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From acd861c77ee6c7a40ca5a1af770a4c31418765e1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 02/36] nautilus: update to 3.36.2.

[ci skip]
---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From f0d1e0ea852f87b01cfe65f0c91ea462c4ca6b46 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 03/36] gnome-2048: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 2be292afb8c8a2408ac79eaa824edfad595fef08 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 04/36] gnome-music: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 467df6abe884258f7ccbc1ab20fc31d605f53900 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 05/36] devhelp: update to 3.36.2.

[ci skip]
---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From fb6746fc25f13e709021101174431a3a6b2e77f3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 06/36] eog: update to 3.36.2.

[ci skip]
---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 0b4bc76806eff54219cbbd60bd9e43bc80402410 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 07/36] gnome-maps: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 5bc3c4624844e58b35e10e6102ef544dbcad5516 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 08/36] gedit: update to 3.36.2.

[ci skip]
---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 89ae5cea8a5d1a6bd54f8d546c3686d4d4d95cd9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 09/36] gnome-contacts: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From b4f89fee48ae0a6e24f73bcc40176982f5505ae9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 10/36] gnome-epub-thumbnailer: update to 1.6.

[ci skip]
---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 6faa27accf4562a063bbe03a5cea36ec6a7aadbb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 11/36] gnome-terminal: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 832e58ec91d57ad223723959eb0e2100086b0910 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 12/36] gnome-podcasts: update to 0.4.7.

[ci skip]
---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From b4866cb6f9c288713bc940f0909aecaa24652888 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 13/36] gnome-control-center: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-control-center/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..b1913f66a8b 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.1
 revision=1
 build_style=meson
 build_helper="gir"
@@ -24,7 +24,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=f3e32d1cff7ec2fc42c2db2c7f61274d476d3a49aae10040f57217ee25d7c690
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"

From 6c942281c2777c62de5021019799de1da25dad29 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 14/36] gnome-user-docs: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 004197262b9d9247c0a5cce29447709cb2e101ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 15/36] evolution-data-server: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 6ab3ebea9b24f73821124e2b6099b04f049cd40a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 16/36] evolution: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From b723223d4118d8e2cf7b8343744ecb75511d240d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 17/36] evolution-ews: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 9179da4a181e6442f007be616ab167354eaa110f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 18/36] file-roller: update to 3.36.2.

[ci skip]
---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From b613cbaef896d1ba7f9cb4311d8e95cd5670e9fd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 19/36] polari: update to 3.36.2.

[ci skip]
---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From fadb792dc5ff7267aad7862e5816ae85be3739ca Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 20/36] gnome-panel: update to 3.36.1.

[ci skip]
---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index c0fdc2e01a9..f23a623d046 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 193c0f40a0f8abdf337bad95d9741aad79541dba Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 21/36] metacity: update to 3.36.1.

[ci skip]
---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index f23a623d046..5dbd7aef201 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From f62c199cbe630320dc17a2b53f5a1e3f39ce7cb3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 22/36] gnome-menus: update to 3.36.0.

[ci skip]
---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From c07a3b71937bf72753bb88191e4f660ca51a1006 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 23/36] gnome-flashback: update to 3.36.1.

[ci skip]
---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 20 +++++++------
 2 files changed, 40 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..d11df407257 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.1
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=5d289390d754639f737ab7bf173f6d5c8388459259314bb7463109598bb5f399
+
+pre_configure() {
+	autoreconf -vfi
+}

From 30fb53e948d7ac472359e0a1b7d8cda80d3844bc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 24/36] graphene: update to 1.10.0.

[ci skip]
---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 33ee2e1b9f3d9edde0bd0f3ea675b193c145d44f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 25/36] mutter: update to 3.36.1.

[ci skip]
---
 common/shlibs                                 | 18 ++++++++---------
 .../patches/fix-cogl-egl-includes.patch       | 11 ----------
 srcpkgs/mutter/template                       | 20 +++++++++----------
 3 files changed, 19 insertions(+), 30 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 5dbd7aef201..827f6265f68 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2926,15 +2926,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..88f76a1d0af 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,25 +1,25 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
 	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
@@ -28,7 +28,7 @@ mutter-devel_package() {
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 1b00f4e3cc9378dd55ff415d69bcefd68ab68c75 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 26/36] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 ed 35 (delta 1), pack-reused 0          | 29 +++++++++++++++++++++++++
 srcpkgs/xdg-desktop-portal-gtk/template |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 ed 35 (delta 1), pack-reused 0

diff --git a/ed 35 (delta 1), pack-reused 0 b/ed 35 (delta 1), pack-reused 0
new file mode 100644
index 00000000000..3f8c6885b2d
--- /dev/null
+++ b/ed 35 (delta 1), pack-reused 0	
@@ -0,0 +1,29 @@
+^[[33mcommit f10ac93d4002da3c943e582bd656d4cdc7d61adb^[[m^[[33m (^[[m^[[1;36mHEAD^[[m^[[33m)^[[m
+Author: Nafis <mnabid.25@outlook.com>
+Date:   Thu Apr 30 13:46:16 2020 +0600
+
+    xdg-desktop-portal-gtk: update to 1.7.1.
+    
+    [ci skip]
+
+^[[1mdiff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1mindex dee0e46338..c711ad1533 100644^[[m
+^[[1m--- a/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1m+++ b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[36m@@ -1,6 +1,6 @@^[[m
+ # Template file for 'xdg-desktop-portal-gtk'^[[m
+ pkgname=xdg-desktop-portal-gtk^[[m
+^[[31m-version=1.6.0^[[m
+^[[32m+^[[m^[[32mversion=1.7.1^[[m
+ revision=1^[[m
+ build_style=gnu-configure^[[m
+ hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"^[[m
+^[[36m@@ -12,7 +12,7 @@^[[m ^[[mmaintainer="Duncaen <duncaen@voidlinux.org>"^[[m
+ license="LGPL-2.1-or-later"^[[m
+ homepage="https://github.com/flatpak/xdg-desktop-portal-gtk"^[[m
+ distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"^[[m
+^[[31m-checksum=956fd16608247e7119d4c6d95a6dc6578dce257d2f272d03b3498572257e2f76^[[m
+^[[32m+^[[m^[[32mchecksum=b6f6d28451e89488dc1121be9355f06686546f869b8d1a2d607c2f63bbd8bb5e^[[m
+ ^[[m
+ post_install() {^[[m
+ 	rm -rf "${DESTDIR}/usr/lib/systemd"^[[m
diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 762bc8a1ba3fcffd2b3ad27b734fdea162af7cbf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 12:53:16 +0600
Subject: [PATCH 27/36] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/budgie-desktop/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..ae5a9d5f769 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,7 +1,7 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"

From b3565e46c1d3d629c8d519107615030c70ddf77f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 28/36] cheese: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 34bda7572cde273dc1360f66b5a04b8b7511fe64 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 29/36] gnome-books: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 2d68bf35ab9377d566541ca3094e02bc2b7f66a4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 30/36] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 33c0acd1c6f975b08582b908ae3ea082a39a4cb3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 31/36] gnome-clocks: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From 5db18a267408b489e16fe3e0c6f983543cca74e2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 32/36] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From bbda284893e2e26a6850084d8fadce5408304fbf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 33/36] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 3e3c665138682f15fe256f472edb49796c2e0230 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 34/36] totem: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 247b31ac893bef37548bf9c4ba99ead910d71346 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 35/36] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From 10008ddb0a037736d1f3ccabd6e477603a20b606 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 36/36] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (14 preceding siblings ...)
  2020-05-02  1:16 ` mnabid
@ 2020-05-02  1:20 ` mnabid
  2020-05-02  1:26 ` mnabid
                   ` (71 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-02  1:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 362 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for `pipewire-0.3.4` to be merged (#20413) .

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 49157 bytes --]

From d221c404cfda3ff8582c299d3e14cc6278eb8224 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/36] gnome-desktop: update to 3.36.2.

[ci skip]
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 9fb74043e9f..c0fdc2e01a9 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From acd861c77ee6c7a40ca5a1af770a4c31418765e1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 02/36] nautilus: update to 3.36.2.

[ci skip]
---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From f0d1e0ea852f87b01cfe65f0c91ea462c4ca6b46 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 03/36] gnome-2048: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 2be292afb8c8a2408ac79eaa824edfad595fef08 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 04/36] gnome-music: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 467df6abe884258f7ccbc1ab20fc31d605f53900 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 05/36] devhelp: update to 3.36.2.

[ci skip]
---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From fb6746fc25f13e709021101174431a3a6b2e77f3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 06/36] eog: update to 3.36.2.

[ci skip]
---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 0b4bc76806eff54219cbbd60bd9e43bc80402410 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 07/36] gnome-maps: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 5bc3c4624844e58b35e10e6102ef544dbcad5516 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 08/36] gedit: update to 3.36.2.

[ci skip]
---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 89ae5cea8a5d1a6bd54f8d546c3686d4d4d95cd9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 09/36] gnome-contacts: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From b4f89fee48ae0a6e24f73bcc40176982f5505ae9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 10/36] gnome-epub-thumbnailer: update to 1.6.

[ci skip]
---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 6faa27accf4562a063bbe03a5cea36ec6a7aadbb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 11/36] gnome-terminal: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 832e58ec91d57ad223723959eb0e2100086b0910 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 12/36] gnome-podcasts: update to 0.4.7.

[ci skip]
---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From b4866cb6f9c288713bc940f0909aecaa24652888 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 13/36] gnome-control-center: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-control-center/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..b1913f66a8b 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.1
 revision=1
 build_style=meson
 build_helper="gir"
@@ -24,7 +24,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=f3e32d1cff7ec2fc42c2db2c7f61274d476d3a49aae10040f57217ee25d7c690
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"

From 6c942281c2777c62de5021019799de1da25dad29 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 14/36] gnome-user-docs: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 004197262b9d9247c0a5cce29447709cb2e101ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 15/36] evolution-data-server: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 6ab3ebea9b24f73821124e2b6099b04f049cd40a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 16/36] evolution: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From b723223d4118d8e2cf7b8343744ecb75511d240d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 17/36] evolution-ews: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 9179da4a181e6442f007be616ab167354eaa110f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 18/36] file-roller: update to 3.36.2.

[ci skip]
---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From b613cbaef896d1ba7f9cb4311d8e95cd5670e9fd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 19/36] polari: update to 3.36.2.

[ci skip]
---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From fadb792dc5ff7267aad7862e5816ae85be3739ca Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 20/36] gnome-panel: update to 3.36.1.

[ci skip]
---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index c0fdc2e01a9..f23a623d046 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 193c0f40a0f8abdf337bad95d9741aad79541dba Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 21/36] metacity: update to 3.36.1.

[ci skip]
---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index f23a623d046..5dbd7aef201 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From f62c199cbe630320dc17a2b53f5a1e3f39ce7cb3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 22/36] gnome-menus: update to 3.36.0.

[ci skip]
---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From c07a3b71937bf72753bb88191e4f660ca51a1006 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 23/36] gnome-flashback: update to 3.36.1.

[ci skip]
---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 20 +++++++------
 2 files changed, 40 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..d11df407257 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.1
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=5d289390d754639f737ab7bf173f6d5c8388459259314bb7463109598bb5f399
+
+pre_configure() {
+	autoreconf -vfi
+}

From 30fb53e948d7ac472359e0a1b7d8cda80d3844bc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 24/36] graphene: update to 1.10.0.

[ci skip]
---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 5b6a4716afde0ceb94a3862955ac958f87db0ba8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 25/36] mutter: update to 3.36.1.

[ci skip]
---
 common/shlibs                                 | 18 +++++++-------
 .../patches/fix-cogl-egl-includes.patch       | 11 ---------
 srcpkgs/mutter/template                       | 24 +++++++++----------
 3 files changed, 21 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 5dbd7aef201..827f6265f68 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2926,15 +2926,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..b648d2f230e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 7392ac4bdabe7fccb3bc98b3a4175a31ebfd2949 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 26/36] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 ed 35 (delta 1), pack-reused 0          | 29 +++++++++++++++++++++++++
 srcpkgs/xdg-desktop-portal-gtk/template |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 ed 35 (delta 1), pack-reused 0

diff --git a/ed 35 (delta 1), pack-reused 0 b/ed 35 (delta 1), pack-reused 0
new file mode 100644
index 00000000000..3f8c6885b2d
--- /dev/null
+++ b/ed 35 (delta 1), pack-reused 0	
@@ -0,0 +1,29 @@
+^[[33mcommit f10ac93d4002da3c943e582bd656d4cdc7d61adb^[[m^[[33m (^[[m^[[1;36mHEAD^[[m^[[33m)^[[m
+Author: Nafis <mnabid.25@outlook.com>
+Date:   Thu Apr 30 13:46:16 2020 +0600
+
+    xdg-desktop-portal-gtk: update to 1.7.1.
+    
+    [ci skip]
+
+^[[1mdiff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1mindex dee0e46338..c711ad1533 100644^[[m
+^[[1m--- a/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1m+++ b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[36m@@ -1,6 +1,6 @@^[[m
+ # Template file for 'xdg-desktop-portal-gtk'^[[m
+ pkgname=xdg-desktop-portal-gtk^[[m
+^[[31m-version=1.6.0^[[m
+^[[32m+^[[m^[[32mversion=1.7.1^[[m
+ revision=1^[[m
+ build_style=gnu-configure^[[m
+ hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"^[[m
+^[[36m@@ -12,7 +12,7 @@^[[m ^[[mmaintainer="Duncaen <duncaen@voidlinux.org>"^[[m
+ license="LGPL-2.1-or-later"^[[m
+ homepage="https://github.com/flatpak/xdg-desktop-portal-gtk"^[[m
+ distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"^[[m
+^[[31m-checksum=956fd16608247e7119d4c6d95a6dc6578dce257d2f272d03b3498572257e2f76^[[m
+^[[32m+^[[m^[[32mchecksum=b6f6d28451e89488dc1121be9355f06686546f869b8d1a2d607c2f63bbd8bb5e^[[m
+ ^[[m
+ post_install() {^[[m
+ 	rm -rf "${DESTDIR}/usr/lib/systemd"^[[m
diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From fd2998756dd21a23f1924212655bce124e7c064a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 12:53:16 +0600
Subject: [PATCH 27/36] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/budgie-desktop/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..ae5a9d5f769 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,7 +1,7 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"

From f43e3f0f68a4ec7e4e6833cdce6953595d3f3c69 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 28/36] cheese: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 009eb5565ef0797540fd170c05b4adc890c147ef Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 29/36] gnome-books: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From ca0ef5f53af876c63cf9e751cfa9f36af0ed07ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 30/36] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 1b5da9df8fb73341dfeda5a40cf6aaf2a2bd2886 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 31/36] gnome-clocks: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From b56cf5a709f306b60c15d8a7cd7d765b3594277c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 32/36] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 0be104defce6b25d1a095c4c369931da1c284b15 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 33/36] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 36a47cf3d7cc5210cf0c54cd52b71a755f931ae7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 34/36] totem: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 3a96c6547b58eb8b71b45de99f90ab0d668b18f4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 35/36] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From 155cb83cf1a66828f2407ce909bd25bb2883db2a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 36/36] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (15 preceding siblings ...)
  2020-05-02  1:20 ` mnabid
@ 2020-05-02  1:26 ` mnabid
  2020-05-02  1:30 ` mnabid
                   ` (70 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-02  1:26 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 362 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for `pipewire-0.3.4` to be merged (#20413) .

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 687872 bytes --]

From d221c404cfda3ff8582c299d3e14cc6278eb8224 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/36] gnome-desktop: update to 3.36.2.

[ci skip]
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 9fb74043e9f..c0fdc2e01a9 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From acd861c77ee6c7a40ca5a1af770a4c31418765e1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 02/36] nautilus: update to 3.36.2.

[ci skip]
---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From f0d1e0ea852f87b01cfe65f0c91ea462c4ca6b46 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 03/36] gnome-2048: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 2be292afb8c8a2408ac79eaa824edfad595fef08 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 04/36] gnome-music: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 467df6abe884258f7ccbc1ab20fc31d605f53900 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 05/36] devhelp: update to 3.36.2.

[ci skip]
---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From fb6746fc25f13e709021101174431a3a6b2e77f3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 06/36] eog: update to 3.36.2.

[ci skip]
---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 0b4bc76806eff54219cbbd60bd9e43bc80402410 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 07/36] gnome-maps: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 5bc3c4624844e58b35e10e6102ef544dbcad5516 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 08/36] gedit: update to 3.36.2.

[ci skip]
---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 89ae5cea8a5d1a6bd54f8d546c3686d4d4d95cd9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 09/36] gnome-contacts: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From b4f89fee48ae0a6e24f73bcc40176982f5505ae9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 10/36] gnome-epub-thumbnailer: update to 1.6.

[ci skip]
---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 6faa27accf4562a063bbe03a5cea36ec6a7aadbb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 11/36] gnome-terminal: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 832e58ec91d57ad223723959eb0e2100086b0910 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 12/36] gnome-podcasts: update to 0.4.7.

[ci skip]
---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From b4866cb6f9c288713bc940f0909aecaa24652888 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 13/36] gnome-control-center: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-control-center/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..b1913f66a8b 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.1
 revision=1
 build_style=meson
 build_helper="gir"
@@ -24,7 +24,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=f3e32d1cff7ec2fc42c2db2c7f61274d476d3a49aae10040f57217ee25d7c690
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"

From 6c942281c2777c62de5021019799de1da25dad29 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 14/36] gnome-user-docs: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 004197262b9d9247c0a5cce29447709cb2e101ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 15/36] evolution-data-server: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 6ab3ebea9b24f73821124e2b6099b04f049cd40a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 16/36] evolution: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From b723223d4118d8e2cf7b8343744ecb75511d240d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 17/36] evolution-ews: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 9179da4a181e6442f007be616ab167354eaa110f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 18/36] file-roller: update to 3.36.2.

[ci skip]
---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From b613cbaef896d1ba7f9cb4311d8e95cd5670e9fd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 19/36] polari: update to 3.36.2.

[ci skip]
---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From fadb792dc5ff7267aad7862e5816ae85be3739ca Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 20/36] gnome-panel: update to 3.36.1.

[ci skip]
---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index c0fdc2e01a9..f23a623d046 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 193c0f40a0f8abdf337bad95d9741aad79541dba Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 21/36] metacity: update to 3.36.1.

[ci skip]
---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index f23a623d046..5dbd7aef201 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From f62c199cbe630320dc17a2b53f5a1e3f39ce7cb3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 22/36] gnome-menus: update to 3.36.0.

[ci skip]
---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From c07a3b71937bf72753bb88191e4f660ca51a1006 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 23/36] gnome-flashback: update to 3.36.1.

[ci skip]
---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 20 +++++++------
 2 files changed, 40 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..d11df407257 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.1
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=5d289390d754639f737ab7bf173f6d5c8388459259314bb7463109598bb5f399
+
+pre_configure() {
+	autoreconf -vfi
+}

From 30fb53e948d7ac472359e0a1b7d8cda80d3844bc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 24/36] graphene: update to 1.10.0.

[ci skip]
---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 9593b874ec44a688b991d9c1a6e99d9d5e10201f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 25/36] mutter: update to 3.36.2.

[ci skip]
---
 common/shlibs                                 | 18 +++++++-------
 .../patches/fix-cogl-egl-includes.patch       | 11 ---------
 srcpkgs/mutter/template                       | 24 +++++++++----------
 3 files changed, 21 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 5dbd7aef201..827f6265f68 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2926,15 +2926,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..b648d2f230e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 36497cce0421ce494a97750c871a2ed25508ac34 Mon Sep 17 00:00:00 2001
From: Lorem <notloremipsum@protonmail.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 26/36] budgie-desktop: add mutter-3.36 support patch

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From c17768527dea0c65eafc10f05951647a2a7f8b7c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 27/36] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 ed 35 (delta 1), pack-reused 0          | 29 +++++++++++++++++++++++++
 srcpkgs/xdg-desktop-portal-gtk/template |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 ed 35 (delta 1), pack-reused 0

diff --git a/ed 35 (delta 1), pack-reused 0 b/ed 35 (delta 1), pack-reused 0
new file mode 100644
index 00000000000..3f8c6885b2d
--- /dev/null
+++ b/ed 35 (delta 1), pack-reused 0	
@@ -0,0 +1,29 @@
+^[[33mcommit f10ac93d4002da3c943e582bd656d4cdc7d61adb^[[m^[[33m (^[[m^[[1;36mHEAD^[[m^[[33m)^[[m
+Author: Nafis <mnabid.25@outlook.com>
+Date:   Thu Apr 30 13:46:16 2020 +0600
+
+    xdg-desktop-portal-gtk: update to 1.7.1.
+    
+    [ci skip]
+
+^[[1mdiff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1mindex dee0e46338..c711ad1533 100644^[[m
+^[[1m--- a/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1m+++ b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[36m@@ -1,6 +1,6 @@^[[m
+ # Template file for 'xdg-desktop-portal-gtk'^[[m
+ pkgname=xdg-desktop-portal-gtk^[[m
+^[[31m-version=1.6.0^[[m
+^[[32m+^[[m^[[32mversion=1.7.1^[[m
+ revision=1^[[m
+ build_style=gnu-configure^[[m
+ hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"^[[m
+^[[36m@@ -12,7 +12,7 @@^[[m ^[[mmaintainer="Duncaen <duncaen@voidlinux.org>"^[[m
+ license="LGPL-2.1-or-later"^[[m
+ homepage="https://github.com/flatpak/xdg-desktop-portal-gtk"^[[m
+ distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"^[[m
+^[[31m-checksum=956fd16608247e7119d4c6d95a6dc6578dce257d2f272d03b3498572257e2f76^[[m
+^[[32m+^[[m^[[32mchecksum=b6f6d28451e89488dc1121be9355f06686546f869b8d1a2d607c2f63bbd8bb5e^[[m
+ ^[[m
+ post_install() {^[[m
+ 	rm -rf "${DESTDIR}/usr/lib/systemd"^[[m
diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From e46103e9b79b7511371c40b8438601f7a8df64ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 28/36] cheese: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 85009752fdc5265b5006cf9e4d51f847b015668c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 29/36] gnome-books: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 95d5e67bac5234f9c69f88341b9b531f38f8b149 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 30/36] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 2dc8aed622421c5b4cce3c010b47fa37b380e0ac Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 31/36] gnome-clocks: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From e1180c3d01e45216d4d3430b1b1c3ae8284235ec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 32/36] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From b080a5e3c4ff43e4cf5fc777122f5c72a48000f4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 33/36] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 29e82adbf8ddf26d703df53d32b34393a0a65a1e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 34/36] totem: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From bfa62b6bf5db727c36d4a69781207aded0cf434f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 35/36] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From e409b4ba4f4c88dbbbf5cf3ab5f646460690dbed Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 36/36] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (16 preceding siblings ...)
  2020-05-02  1:26 ` mnabid
@ 2020-05-02  1:30 ` mnabid
  2020-05-02 13:47 ` sgn
                   ` (69 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-02  1:30 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 362 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for `pipewire-0.3.4` to be merged (#20413) .

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 687872 bytes --]

From d221c404cfda3ff8582c299d3e14cc6278eb8224 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/36] gnome-desktop: update to 3.36.2.

[ci skip]
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 9fb74043e9f..c0fdc2e01a9 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From acd861c77ee6c7a40ca5a1af770a4c31418765e1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 02/36] nautilus: update to 3.36.2.

[ci skip]
---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From f0d1e0ea852f87b01cfe65f0c91ea462c4ca6b46 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 03/36] gnome-2048: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 2be292afb8c8a2408ac79eaa824edfad595fef08 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 04/36] gnome-music: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 467df6abe884258f7ccbc1ab20fc31d605f53900 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 05/36] devhelp: update to 3.36.2.

[ci skip]
---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From fb6746fc25f13e709021101174431a3a6b2e77f3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 06/36] eog: update to 3.36.2.

[ci skip]
---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 0b4bc76806eff54219cbbd60bd9e43bc80402410 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 07/36] gnome-maps: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 5bc3c4624844e58b35e10e6102ef544dbcad5516 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 08/36] gedit: update to 3.36.2.

[ci skip]
---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 89ae5cea8a5d1a6bd54f8d546c3686d4d4d95cd9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 09/36] gnome-contacts: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From b4f89fee48ae0a6e24f73bcc40176982f5505ae9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 10/36] gnome-epub-thumbnailer: update to 1.6.

[ci skip]
---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 6faa27accf4562a063bbe03a5cea36ec6a7aadbb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 11/36] gnome-terminal: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 832e58ec91d57ad223723959eb0e2100086b0910 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 12/36] gnome-podcasts: update to 0.4.7.

[ci skip]
---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From b4866cb6f9c288713bc940f0909aecaa24652888 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 13/36] gnome-control-center: update to 3.36.1.

[ci skip]
---
 srcpkgs/gnome-control-center/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..b1913f66a8b 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.1
 revision=1
 build_style=meson
 build_helper="gir"
@@ -24,7 +24,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=f3e32d1cff7ec2fc42c2db2c7f61274d476d3a49aae10040f57217ee25d7c690
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"

From 6c942281c2777c62de5021019799de1da25dad29 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 14/36] gnome-user-docs: update to 3.36.2.

[ci skip]
---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 004197262b9d9247c0a5cce29447709cb2e101ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 15/36] evolution-data-server: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 6ab3ebea9b24f73821124e2b6099b04f049cd40a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 16/36] evolution: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From b723223d4118d8e2cf7b8343744ecb75511d240d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 17/36] evolution-ews: update to 3.36.2.

[ci skip]
---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 9179da4a181e6442f007be616ab167354eaa110f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 18/36] file-roller: update to 3.36.2.

[ci skip]
---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From b613cbaef896d1ba7f9cb4311d8e95cd5670e9fd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 19/36] polari: update to 3.36.2.

[ci skip]
---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From fadb792dc5ff7267aad7862e5816ae85be3739ca Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 20/36] gnome-panel: update to 3.36.1.

[ci skip]
---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index c0fdc2e01a9..f23a623d046 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 193c0f40a0f8abdf337bad95d9741aad79541dba Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 21/36] metacity: update to 3.36.1.

[ci skip]
---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index f23a623d046..5dbd7aef201 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From f62c199cbe630320dc17a2b53f5a1e3f39ce7cb3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 22/36] gnome-menus: update to 3.36.0.

[ci skip]
---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From c07a3b71937bf72753bb88191e4f660ca51a1006 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 23/36] gnome-flashback: update to 3.36.1.

[ci skip]
---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 20 +++++++------
 2 files changed, 40 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..d11df407257 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.1
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=5d289390d754639f737ab7bf173f6d5c8388459259314bb7463109598bb5f399
+
+pre_configure() {
+	autoreconf -vfi
+}

From 30fb53e948d7ac472359e0a1b7d8cda80d3844bc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 24/36] graphene: update to 1.10.0.

[ci skip]
---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 9593b874ec44a688b991d9c1a6e99d9d5e10201f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 25/36] mutter: update to 3.36.2.

[ci skip]
---
 common/shlibs                                 | 18 +++++++-------
 .../patches/fix-cogl-egl-includes.patch       | 11 ---------
 srcpkgs/mutter/template                       | 24 +++++++++----------
 3 files changed, 21 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 5dbd7aef201..827f6265f68 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2926,15 +2926,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..b648d2f230e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 36497cce0421ce494a97750c871a2ed25508ac34 Mon Sep 17 00:00:00 2001
From: Lorem <notloremipsum@protonmail.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 26/36] budgie-desktop: add mutter-3.36 support patch

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From c17768527dea0c65eafc10f05951647a2a7f8b7c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 27/36] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 ed 35 (delta 1), pack-reused 0          | 29 +++++++++++++++++++++++++
 srcpkgs/xdg-desktop-portal-gtk/template |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 ed 35 (delta 1), pack-reused 0

diff --git a/ed 35 (delta 1), pack-reused 0 b/ed 35 (delta 1), pack-reused 0
new file mode 100644
index 00000000000..3f8c6885b2d
--- /dev/null
+++ b/ed 35 (delta 1), pack-reused 0	
@@ -0,0 +1,29 @@
+^[[33mcommit f10ac93d4002da3c943e582bd656d4cdc7d61adb^[[m^[[33m (^[[m^[[1;36mHEAD^[[m^[[33m)^[[m
+Author: Nafis <mnabid.25@outlook.com>
+Date:   Thu Apr 30 13:46:16 2020 +0600
+
+    xdg-desktop-portal-gtk: update to 1.7.1.
+    
+    [ci skip]
+
+^[[1mdiff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1mindex dee0e46338..c711ad1533 100644^[[m
+^[[1m--- a/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1m+++ b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[36m@@ -1,6 +1,6 @@^[[m
+ # Template file for 'xdg-desktop-portal-gtk'^[[m
+ pkgname=xdg-desktop-portal-gtk^[[m
+^[[31m-version=1.6.0^[[m
+^[[32m+^[[m^[[32mversion=1.7.1^[[m
+ revision=1^[[m
+ build_style=gnu-configure^[[m
+ hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"^[[m
+^[[36m@@ -12,7 +12,7 @@^[[m ^[[mmaintainer="Duncaen <duncaen@voidlinux.org>"^[[m
+ license="LGPL-2.1-or-later"^[[m
+ homepage="https://github.com/flatpak/xdg-desktop-portal-gtk"^[[m
+ distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"^[[m
+^[[31m-checksum=956fd16608247e7119d4c6d95a6dc6578dce257d2f272d03b3498572257e2f76^[[m
+^[[32m+^[[m^[[32mchecksum=b6f6d28451e89488dc1121be9355f06686546f869b8d1a2d607c2f63bbd8bb5e^[[m
+ ^[[m
+ post_install() {^[[m
+ 	rm -rf "${DESTDIR}/usr/lib/systemd"^[[m
diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From e46103e9b79b7511371c40b8438601f7a8df64ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 28/36] cheese: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 85009752fdc5265b5006cf9e4d51f847b015668c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 29/36] gnome-books: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 95d5e67bac5234f9c69f88341b9b531f38f8b149 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 30/36] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 2dc8aed622421c5b4cce3c010b47fa37b380e0ac Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 31/36] gnome-clocks: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From e1180c3d01e45216d4d3430b1b1c3ae8284235ec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 32/36] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From b080a5e3c4ff43e4cf5fc777122f5c72a48000f4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 33/36] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 29e82adbf8ddf26d703df53d32b34393a0a65a1e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 34/36] totem: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From bfa62b6bf5db727c36d4a69781207aded0cf434f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 35/36] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From e409b4ba4f4c88dbbbf5cf3ab5f646460690dbed Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 36/36] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (17 preceding siblings ...)
  2020-05-02  1:30 ` mnabid
@ 2020-05-02 13:47 ` sgn
  2020-05-02 13:50 ` sgn
                   ` (68 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: sgn @ 2020-05-02 13:47 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 313 bytes --]

New comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-622956390

Comment:
Hi, as this will be a big PR.
Please try to build it in your machine first and add `[ci skip]` into the last commit's message.

Please ping me when you finish touching this.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (18 preceding siblings ...)
  2020-05-02 13:47 ` sgn
@ 2020-05-02 13:50 ` sgn
  2020-05-04  9:11 ` [PR PATCH] [Updated] " mnabid
                   ` (67 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: sgn @ 2020-05-02 13:50 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 350 bytes --]

New comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-622956390

Comment:
~As this will be a big PR.
Please try to build it in your machine first and add `[ci skip]` into the last commit's message.~

Ah, you've already done that, nice.

Please ping me when you finish touching this.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (19 preceding siblings ...)
  2020-05-02 13:50 ` sgn
@ 2020-05-04  9:11 ` mnabid
  2020-05-06  7:01 ` not-chicken
                   ` (66 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-04  9:11 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 366 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
**Waiting for `pipewire-0.3.4` to be merged (#20413) .**

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 698878 bytes --]

From cf9a9f5b7c5567827fed1b021c44b4f01461bb41 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/43] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index acc92a8ae8d..bb3e3f1f59f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 3e09c3125ef902583f74e7b6312cf91253f62a99 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/43] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..936ba284b02 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
 configure_args="-Dsystemd_journal=false"
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a

From 1eed314f00b473cb1d1dfe0ced047457669c499b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 03/43] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From 7c91777d2efe6e51ecfa02687cff24d618032d27 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 04/43] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 099747d5b40a8c3f87e086667609aaf0210648b9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 05/43] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From f01f911eb53300c1ca0ce026e46a0777c5b6dbb4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 06/43] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 171a82da1c779e45ebe19a18c66c79211118e664 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 07/43] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From fa541c0064a9c4443b8ea0de499029a583d61542 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 08/43] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From dc702a9088aa20118c873342206ea83f15e97d06 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 09/43] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From e30757a1b5c21539ad8121d3a3cba6d912fe7b8b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 10/43] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From e254b5c6bf64c8f731f9dbe16f6b7a20e9c39e5c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 11/43] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 7aaa7889dafe1263989157611000b70c7d32f124 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 12/43] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 4a6604fdf0ff5ddfe76a563542968a491c7675d9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 13/43] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 22f24ad080d5628279f831172e22b936d04e2019 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 14/43] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From c7c0df4614da4e267d640ca54bbcb85adffc0d26 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 15/43] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 3f388410d31e8fbb67114f940c698eec3a33e511 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 16/43] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 6dcbb310dcea68c79ad6c086035b15de69775939 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 17/43] gnome-settings-daemon: update to 3.36.1.

---
 srcpkgs/gnome-settings-daemon/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From d6397cf973f28ec77b500a843546ae0ccc87cb0e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 18/43] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 52b29c42b4cb18be3e9cbd80cf96cd00d8bf93c6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 19/43] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From b65ea29623b53086b4f4d431356365311744799d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 20/43] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 4f9963d8155743e8d2f1c3907178e8bcf405940a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 21/43] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From ac71cf829836226b498a7bbd28c07ce5c5a8cfc5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 22/43] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 48833fdd40d71b529c2707966843f79d48079ac4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 23/43] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 6600b44e3cce76deb6e118eb0441a2e397bdb76d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 24/43] polari: update to 3.36.2.

---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From 38334c8e80e389d5f7f14a05653859e79dfa0a25 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 25/43] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index bb3e3f1f59f..d6c9d9bfe88 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 37d32b9c947d85e24333839f3ae4e9eaeb754975 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 26/43] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index d6c9d9bfe88..5128ab98609 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From e6f35400ab19a8f0106ff8d854f98046e60c6c2f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 27/43] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 12900719734f002fcf38ac7eac357bdb88cc66b0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 28/43] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 20 +++++++------
 2 files changed, 40 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..121a96c139d 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}

From 004fa985058a0b02ca10ceb2651de9671f515ca7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 29/43] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 942566d18dc38513acbfecb42b0c2f1254b363cc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 30/43] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 +++++++-------
 .../patches/fix-cogl-egl-includes.patch       | 11 ---------
 srcpkgs/mutter/template                       | 24 +++++++++----------
 3 files changed, 21 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 5128ab98609..57418919272 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2933,15 +2933,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..b648d2f230e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From dd809ce4b7445f8813b56ad50f8c197516867154 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 31/43] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 3156205638b95bcf05c808045a347494e4170b8a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 32/43] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 ed 35 (delta 1), pack-reused 0          | 29 +++++++++++++++++++++++++
 srcpkgs/xdg-desktop-portal-gtk/template |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 ed 35 (delta 1), pack-reused 0

diff --git a/ed 35 (delta 1), pack-reused 0 b/ed 35 (delta 1), pack-reused 0
new file mode 100644
index 00000000000..3f8c6885b2d
--- /dev/null
+++ b/ed 35 (delta 1), pack-reused 0	
@@ -0,0 +1,29 @@
+^[[33mcommit f10ac93d4002da3c943e582bd656d4cdc7d61adb^[[m^[[33m (^[[m^[[1;36mHEAD^[[m^[[33m)^[[m
+Author: Nafis <mnabid.25@outlook.com>
+Date:   Thu Apr 30 13:46:16 2020 +0600
+
+    xdg-desktop-portal-gtk: update to 1.7.1.
+    
+    [ci skip]
+
+^[[1mdiff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1mindex dee0e46338..c711ad1533 100644^[[m
+^[[1m--- a/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1m+++ b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[36m@@ -1,6 +1,6 @@^[[m
+ # Template file for 'xdg-desktop-portal-gtk'^[[m
+ pkgname=xdg-desktop-portal-gtk^[[m
+^[[31m-version=1.6.0^[[m
+^[[32m+^[[m^[[32mversion=1.7.1^[[m
+ revision=1^[[m
+ build_style=gnu-configure^[[m
+ hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"^[[m
+^[[36m@@ -12,7 +12,7 @@^[[m ^[[mmaintainer="Duncaen <duncaen@voidlinux.org>"^[[m
+ license="LGPL-2.1-or-later"^[[m
+ homepage="https://github.com/flatpak/xdg-desktop-portal-gtk"^[[m
+ distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"^[[m
+^[[31m-checksum=956fd16608247e7119d4c6d95a6dc6578dce257d2f272d03b3498572257e2f76^[[m
+^[[32m+^[[m^[[32mchecksum=b6f6d28451e89488dc1121be9355f06686546f869b8d1a2d607c2f63bbd8bb5e^[[m
+ ^[[m
+ post_install() {^[[m
+ 	rm -rf "${DESTDIR}/usr/lib/systemd"^[[m
diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 15827650bd6f8dddf088da70c03e63766b6fa605 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 33/43] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 91bc9e8a87ff286b91e4497e426447a00badfe1e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 34/43] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 48885f289e3c92ad900a11ae357d76db07dd2326 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 35/43] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 1a17c9d3ebe3eeea4677831ee89d0689dc89c824 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 36/43] gnome-clocks: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From f5ef2322a90c1beb287d2448b1f16978fd509f0e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 37/43] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 1fbeb048a90862bd0f482a3b1922f326fb5d3d91 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 38/43] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 5c0f7e7064ab2fd5a3bde6d097d297b3160dc500 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 39/43] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 9f19f43c6b76d5cc764b6aecc12ab25b76f27741 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 40/43] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From eae6433186d23d4bf0c2e5cb88bb9c278942e9a4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 41/43] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From a83b913f13333235bee5ccfe0187d8f0e4052949 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 42/43] lutris: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From a719fed5a761277eeb3ba775420bf8670791051a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 43/43] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (20 preceding siblings ...)
  2020-05-04  9:11 ` [PR PATCH] [Updated] " mnabid
@ 2020-05-06  7:01 ` not-chicken
  2020-05-06 15:06 ` [PR PATCH] [Updated] " mnabid
                   ` (65 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: not-chicken @ 2020-05-06  7:01 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 514 bytes --]

New comment by not-chicken on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-624477462

Comment:
 ![gnome3 36](https://user-images.githubusercontent.com/50471800/81145381-ccf82380-8f93-11ea-8902-2f3e26243a91.png)

Did some preliminary testing. Needed a few patches( god bless alpine devs) and few more version bumps( notably gjs and mozjs). 
@mnabid. I will post the changes here for review once I get to test it a bit more. Thanks a lot for your hard work on it!

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (21 preceding siblings ...)
  2020-05-06  7:01 ` not-chicken
@ 2020-05-06 15:06 ` mnabid
  2020-05-06 15:13 ` mnabid
                   ` (64 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-06 15:06 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 366 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
**Waiting for `pipewire-0.3.4` to be merged (#20413) .**

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 711707 bytes --]

From 0125862af574da3eb5e6fbf227d16dfcd6bbe85b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/53] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index eaf2724d234..abab82e702d 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From c1344d073ab333f11e03f71876d64ef8a66e6391 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/53] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..936ba284b02 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
 configure_args="-Dsystemd_journal=false"
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a

From 9d608a1af5c274e9a132e6d1a181d16141e33ba7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/53] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From 054a519a04fec15bf3d191bbee16b318603b0e06 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/53] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 10bcec25875ea20a9ec57923cd06eba92f733a59 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/53] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From ede22d579a13ebbd3833d90e7ef410ff46537926 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/53] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 3ac1027f3e59d007727c505b5cdc6928692bc8cb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/53] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 6f5aa43d3bc5b08e3304b3e288eab8241bcaf44c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 08/53] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From ac5a123f9a6bbdbe6f7513dd28518bee75012735 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 09/53] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From dbceed24b28384cc080a92e90015310f8ede63e9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 10/53] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 9be80fa579ff15476787843cd3412283da4bbda8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 11/53] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From dd77ce4c34559f4517d5ecfc848fb7bbda460f68 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 12/53] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 3d9ffe64522b72fbd8c4422df96aef5ddb397ac8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 13/53] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From c8b668d74704cf7a14063226207532f7a4a1feba Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 14/53] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 910c8b4201cc4cb99a206b5a56a8f805478df037 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 15/53] gnome-settings-daemon: update to 3.36.1.

---
 srcpkgs/gnome-settings-daemon/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From a54f34ac69f69c624f95e776182d0158dc9ed183 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 16/53] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 2baff96da2d2f6430a12bc1e6e07cf010cd060ba Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 17/53] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From 47047803e3ddfd000a716208982750583e2aa571 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 18/53] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 2cbfab5269909631190105a62bfb01ad18d0a73c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 19/53] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 4f0d383c5f5db8436686135809bb712d7b321855 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 20/53] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From efee7d7c7522ca0064b516d1a421c1d8e97dfef5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 21/53] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 69e38183e44d3231f7578dac615ae97c2e483aec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 22/53] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..a13c5600d79 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,10 +1,10 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
 makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
  libXevie-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From a72428608480bd0582d1f47636dbcb5fb03f2391 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 23/53] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 846b6c702d46255de1ea987396a1bafbf6c87148 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 24/53] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From 71dda058956a077d32da306c5019970d396cd5e4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 25/53] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From d81f7b7d6d6b480e2cc986e62b83371538ace68a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 26/53] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From cf690ca2b089436eab6db09bd9ee699af707fa33 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 27/53] polari: update to 3.36.2.

---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From 52227a5c340bd80085603d01489b419b62c05aa6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 28/53] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From d48687ae3aaf56d78b5866c40f049e2c0ed494e8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 29/53] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 319104fdb38476c927cb6dac309c66042cf23870 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:48:46 +0600
Subject: [PATCH 30/53] simple-scan: update to 3.36.2.1.

---
 srcpkgs/simple-scan/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/simple-scan/template b/srcpkgs/simple-scan/template
index d0fc97903e5..5e07d63f08d 100644
--- a/srcpkgs/simple-scan/template
+++ b/srcpkgs/simple-scan/template
@@ -1,7 +1,6 @@
 # Template file for 'simple-scan'
 pkgname=simple-scan
-_gnome_version=3.36
-version=3.36.1
+version=3.36.2.1
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,5 +10,5 @@ short_desc="GTK Simple scanning utility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/simple-scan"
-distfiles="${GNOME_SITE}/${pkgname}/${_gnome_version}/${pkgname}-${version}.tar.xz"
-checksum=7427f0902253e01383941243f56ef987609943c537f92dd1043a53eb5eaaf92e
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*.*}/${pkgname}-${version}.tar.xz"
+checksum=bb8ce5750cd0405e14e4ac8b09f4a587c2fa3a418614ad425a6694c981bb012b

From 680e047d942a956f537e38b69ca8553a3d82ef82 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 31/53] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 435df2be53aabfaf7265f1ec53c46003d0ea3b56 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 32/53] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From c3476f38fdbd90809404e54f5d237a87d52e89aa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 33/53] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index abab82e702d..e8ff110382f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From e7d789d647546250caf809dbe79d1738bab0c452 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 34/53] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index e8ff110382f..e3709b9ac6e 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 5dab3f48744a4c4fd5d2bf64269e23b335fcdeb3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 35/53] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From bce5ca5dd8a98c0632029594be0622e720f7a3fb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 36/53] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 20 +++++++------
 2 files changed, 40 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..121a96c139d 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}

From 48849c655e8b27e6ee1714dfa85bd23fd1554ac9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 37/53] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 5fcd11a613dd0a06055db0a6ee2db95f7f748dd5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 38/53] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 +++++++-------
 .../patches/fix-cogl-egl-includes.patch       | 11 ---------
 srcpkgs/mutter/template                       | 24 +++++++++----------
 3 files changed, 21 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index e3709b9ac6e..209bf6a70ba 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2933,15 +2933,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..b648d2f230e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 6c6821d1faed742b9f5c8142f35d08bccb1f23aa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 39/53] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From bf6a93aa735d53f50645f809b6f47bd561af05bc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 40/53] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From d0df336b417e411d27ad212d5a6f16d7d16c43ac Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 41/53] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From c27dc10d9babc25f6fcf2d0b93ffd26fecc9cca8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 42/53] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 ed 35 (delta 1), pack-reused 0          | 29 +++++++++++++++++++++++++
 srcpkgs/xdg-desktop-portal-gtk/template |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 ed 35 (delta 1), pack-reused 0

diff --git a/ed 35 (delta 1), pack-reused 0 b/ed 35 (delta 1), pack-reused 0
new file mode 100644
index 00000000000..3f8c6885b2d
--- /dev/null
+++ b/ed 35 (delta 1), pack-reused 0	
@@ -0,0 +1,29 @@
+^[[33mcommit f10ac93d4002da3c943e582bd656d4cdc7d61adb^[[m^[[33m (^[[m^[[1;36mHEAD^[[m^[[33m)^[[m
+Author: Nafis <mnabid.25@outlook.com>
+Date:   Thu Apr 30 13:46:16 2020 +0600
+
+    xdg-desktop-portal-gtk: update to 1.7.1.
+    
+    [ci skip]
+
+^[[1mdiff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1mindex dee0e46338..c711ad1533 100644^[[m
+^[[1m--- a/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1m+++ b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[36m@@ -1,6 +1,6 @@^[[m
+ # Template file for 'xdg-desktop-portal-gtk'^[[m
+ pkgname=xdg-desktop-portal-gtk^[[m
+^[[31m-version=1.6.0^[[m
+^[[32m+^[[m^[[32mversion=1.7.1^[[m
+ revision=1^[[m
+ build_style=gnu-configure^[[m
+ hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"^[[m
+^[[36m@@ -12,7 +12,7 @@^[[m ^[[mmaintainer="Duncaen <duncaen@voidlinux.org>"^[[m
+ license="LGPL-2.1-or-later"^[[m
+ homepage="https://github.com/flatpak/xdg-desktop-portal-gtk"^[[m
+ distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"^[[m
+^[[31m-checksum=956fd16608247e7119d4c6d95a6dc6578dce257d2f272d03b3498572257e2f76^[[m
+^[[32m+^[[m^[[32mchecksum=b6f6d28451e89488dc1121be9355f06686546f869b8d1a2d607c2f63bbd8bb5e^[[m
+ ^[[m
+ post_install() {^[[m
+ 	rm -rf "${DESTDIR}/usr/lib/systemd"^[[m
diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 5f94e55e7b339eedf18b5efbcaab509a3ebe155a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 43/53] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From f372f2955f0d59aec443a1485695d14a36a6f7c5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 44/53] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From ef6e596f709dd26bd45f88c2cbd7a99f1356a6e0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 45/53] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 01687567cccfa89298c1f38a5df49afb6a446e48 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 46/53] gnome-clocks: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From c790631bf8e6727549f30b7c4dff300c44e74047 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 47/53] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From ad123e0ac944a24f1011539024c09eb2e7d70992 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 48/53] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 373665e605646ffdf2aa59c4ff21309a60b745ec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 49/53] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From d7433b89bcbaf667e41605430bb104b79a3cbf9c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 50/53] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From d884d1bdcda37f82bf93f3957ac860236d9e8ed5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 51/53] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 68bf826b6f1522c52928acc66035854ac2711977 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 52/53] lutris: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From e6dee193bac5d121f9bcee4bdf8ce3d9eefe7d46 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 53/53] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (22 preceding siblings ...)
  2020-05-06 15:06 ` [PR PATCH] [Updated] " mnabid
@ 2020-05-06 15:13 ` mnabid
  2020-05-06 15:19 ` mnabid
                   ` (63 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-06 15:13 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 366 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
**Waiting for `pipewire-0.3.4` to be merged (#20413) .**

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 711707 bytes --]

From 0125862af574da3eb5e6fbf227d16dfcd6bbe85b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/53] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index eaf2724d234..abab82e702d 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From c1344d073ab333f11e03f71876d64ef8a66e6391 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/53] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..936ba284b02 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
 configure_args="-Dsystemd_journal=false"
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a

From 9d608a1af5c274e9a132e6d1a181d16141e33ba7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/53] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From 054a519a04fec15bf3d191bbee16b318603b0e06 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/53] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 10bcec25875ea20a9ec57923cd06eba92f733a59 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/53] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From ede22d579a13ebbd3833d90e7ef410ff46537926 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/53] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 3ac1027f3e59d007727c505b5cdc6928692bc8cb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/53] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 6f5aa43d3bc5b08e3304b3e288eab8241bcaf44c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 08/53] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From ac5a123f9a6bbdbe6f7513dd28518bee75012735 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 09/53] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From dbceed24b28384cc080a92e90015310f8ede63e9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 10/53] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 9be80fa579ff15476787843cd3412283da4bbda8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 11/53] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From dd77ce4c34559f4517d5ecfc848fb7bbda460f68 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 12/53] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 3d9ffe64522b72fbd8c4422df96aef5ddb397ac8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 13/53] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From c8b668d74704cf7a14063226207532f7a4a1feba Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 14/53] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 910c8b4201cc4cb99a206b5a56a8f805478df037 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 15/53] gnome-settings-daemon: update to 3.36.1.

---
 srcpkgs/gnome-settings-daemon/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From a54f34ac69f69c624f95e776182d0158dc9ed183 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 16/53] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 2baff96da2d2f6430a12bc1e6e07cf010cd060ba Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 17/53] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From 47047803e3ddfd000a716208982750583e2aa571 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 18/53] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 2cbfab5269909631190105a62bfb01ad18d0a73c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 19/53] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 4f0d383c5f5db8436686135809bb712d7b321855 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 20/53] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From efee7d7c7522ca0064b516d1a421c1d8e97dfef5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 21/53] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 69e38183e44d3231f7578dac615ae97c2e483aec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 22/53] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..a13c5600d79 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,10 +1,10 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
 makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
  libXevie-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From a72428608480bd0582d1f47636dbcb5fb03f2391 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 23/53] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 846b6c702d46255de1ea987396a1bafbf6c87148 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 24/53] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From 71dda058956a077d32da306c5019970d396cd5e4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 25/53] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From d81f7b7d6d6b480e2cc986e62b83371538ace68a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 26/53] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From cf690ca2b089436eab6db09bd9ee699af707fa33 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 27/53] polari: update to 3.36.2.

---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From 52227a5c340bd80085603d01489b419b62c05aa6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 28/53] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From d48687ae3aaf56d78b5866c40f049e2c0ed494e8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 29/53] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 319104fdb38476c927cb6dac309c66042cf23870 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:48:46 +0600
Subject: [PATCH 30/53] simple-scan: update to 3.36.2.1.

---
 srcpkgs/simple-scan/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/simple-scan/template b/srcpkgs/simple-scan/template
index d0fc97903e5..5e07d63f08d 100644
--- a/srcpkgs/simple-scan/template
+++ b/srcpkgs/simple-scan/template
@@ -1,7 +1,6 @@
 # Template file for 'simple-scan'
 pkgname=simple-scan
-_gnome_version=3.36
-version=3.36.1
+version=3.36.2.1
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,5 +10,5 @@ short_desc="GTK Simple scanning utility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/simple-scan"
-distfiles="${GNOME_SITE}/${pkgname}/${_gnome_version}/${pkgname}-${version}.tar.xz"
-checksum=7427f0902253e01383941243f56ef987609943c537f92dd1043a53eb5eaaf92e
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*.*}/${pkgname}-${version}.tar.xz"
+checksum=bb8ce5750cd0405e14e4ac8b09f4a587c2fa3a418614ad425a6694c981bb012b

From 680e047d942a956f537e38b69ca8553a3d82ef82 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 31/53] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 435df2be53aabfaf7265f1ec53c46003d0ea3b56 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 32/53] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From c3476f38fdbd90809404e54f5d237a87d52e89aa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 33/53] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index abab82e702d..e8ff110382f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From e7d789d647546250caf809dbe79d1738bab0c452 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 34/53] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index e8ff110382f..e3709b9ac6e 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 5dab3f48744a4c4fd5d2bf64269e23b335fcdeb3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 35/53] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From bce5ca5dd8a98c0632029594be0622e720f7a3fb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 36/53] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 20 +++++++------
 2 files changed, 40 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..121a96c139d 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}

From 48849c655e8b27e6ee1714dfa85bd23fd1554ac9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 37/53] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 5fcd11a613dd0a06055db0a6ee2db95f7f748dd5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 38/53] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 +++++++-------
 .../patches/fix-cogl-egl-includes.patch       | 11 ---------
 srcpkgs/mutter/template                       | 24 +++++++++----------
 3 files changed, 21 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index e3709b9ac6e..209bf6a70ba 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2933,15 +2933,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..b648d2f230e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 6c6821d1faed742b9f5c8142f35d08bccb1f23aa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 39/53] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From bf6a93aa735d53f50645f809b6f47bd561af05bc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 40/53] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From d0df336b417e411d27ad212d5a6f16d7d16c43ac Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 41/53] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From c27dc10d9babc25f6fcf2d0b93ffd26fecc9cca8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 42/53] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 ed 35 (delta 1), pack-reused 0          | 29 +++++++++++++++++++++++++
 srcpkgs/xdg-desktop-portal-gtk/template |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 ed 35 (delta 1), pack-reused 0

diff --git a/ed 35 (delta 1), pack-reused 0 b/ed 35 (delta 1), pack-reused 0
new file mode 100644
index 00000000000..3f8c6885b2d
--- /dev/null
+++ b/ed 35 (delta 1), pack-reused 0	
@@ -0,0 +1,29 @@
+^[[33mcommit f10ac93d4002da3c943e582bd656d4cdc7d61adb^[[m^[[33m (^[[m^[[1;36mHEAD^[[m^[[33m)^[[m
+Author: Nafis <mnabid.25@outlook.com>
+Date:   Thu Apr 30 13:46:16 2020 +0600
+
+    xdg-desktop-portal-gtk: update to 1.7.1.
+    
+    [ci skip]
+
+^[[1mdiff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1mindex dee0e46338..c711ad1533 100644^[[m
+^[[1m--- a/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1m+++ b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[36m@@ -1,6 +1,6 @@^[[m
+ # Template file for 'xdg-desktop-portal-gtk'^[[m
+ pkgname=xdg-desktop-portal-gtk^[[m
+^[[31m-version=1.6.0^[[m
+^[[32m+^[[m^[[32mversion=1.7.1^[[m
+ revision=1^[[m
+ build_style=gnu-configure^[[m
+ hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"^[[m
+^[[36m@@ -12,7 +12,7 @@^[[m ^[[mmaintainer="Duncaen <duncaen@voidlinux.org>"^[[m
+ license="LGPL-2.1-or-later"^[[m
+ homepage="https://github.com/flatpak/xdg-desktop-portal-gtk"^[[m
+ distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"^[[m
+^[[31m-checksum=956fd16608247e7119d4c6d95a6dc6578dce257d2f272d03b3498572257e2f76^[[m
+^[[32m+^[[m^[[32mchecksum=b6f6d28451e89488dc1121be9355f06686546f869b8d1a2d607c2f63bbd8bb5e^[[m
+ ^[[m
+ post_install() {^[[m
+ 	rm -rf "${DESTDIR}/usr/lib/systemd"^[[m
diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 5f94e55e7b339eedf18b5efbcaab509a3ebe155a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 43/53] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From f372f2955f0d59aec443a1485695d14a36a6f7c5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 44/53] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From ef6e596f709dd26bd45f88c2cbd7a99f1356a6e0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 45/53] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 01687567cccfa89298c1f38a5df49afb6a446e48 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 46/53] gnome-clocks: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From c790631bf8e6727549f30b7c4dff300c44e74047 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 47/53] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From ad123e0ac944a24f1011539024c09eb2e7d70992 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 48/53] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 373665e605646ffdf2aa59c4ff21309a60b745ec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 49/53] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From d7433b89bcbaf667e41605430bb104b79a3cbf9c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 50/53] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From d884d1bdcda37f82bf93f3957ac860236d9e8ed5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 51/53] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 68bf826b6f1522c52928acc66035854ac2711977 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 52/53] lutris: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From 4335d55d869a509134f5c2c64c7c95423b46a39d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 53/53] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (23 preceding siblings ...)
  2020-05-06 15:13 ` mnabid
@ 2020-05-06 15:19 ` mnabid
  2020-05-06 16:37 ` not-chicken
                   ` (62 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-06 15:19 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 366 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
**Waiting for `pipewire-0.3.4` to be merged (#20413) .**

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 711707 bytes --]

From d1f5bb4ca0bb6fa73aa42662d5764e50dc10d0c1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/53] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index eaf2724d234..abab82e702d 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From d68841a9a9fb374d511974107e589c1626e282eb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/53] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..936ba284b02 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
 configure_args="-Dsystemd_journal=false"
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a

From e98013329af6240227d173e464dae6960c5f1ab4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/53] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From ee1d23d02f5609c4b9441989aa6e0e546b83fff8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/53] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From fcd1211b777b8272392d939f5947c5838b1e6215 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/53] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From b52e65206741605ae42caae313173868d232db5b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/53] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From f80ac95e401ead2eebffb86a6d06df11079fe75b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/53] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From cbab9b7280ecda4b017cd7178c7bd1ad1120f801 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 08/53] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 58753014cb9c07a7f19cd73ebce2022aecfd496d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 09/53] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From ceb0978476139bcb32a75949551c9c1229e7b13b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 10/53] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 065a482d538f0059cf90955be105172cd2885974 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 11/53] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From e5878bd0dfbece006e78333e03c2c9a26c541feb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 12/53] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 28aec90a444451adc5da4eb7b9371173fbbf3602 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 13/53] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 7e87f56cc998ea6fcb86c44cd4a1be5cfeaef6cc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 14/53] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 10a4287209f554f22554fed43f802a4da3a86387 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 15/53] gnome-settings-daemon: update to 3.36.1.

---
 srcpkgs/gnome-settings-daemon/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 6f0677d711c0a8eb2115a8a086cb2e4e0cd3fb68 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 16/53] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 5a4bf4542082ab3b2ab569929050f985b75e633c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 17/53] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From 52f0aafdb80b2dd4f9d24031964a1854b6407216 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 18/53] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 9f985da92bd01e3cfd80060a343bc896e4bcf8f5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 19/53] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 4a19ae42a178c7452a53fdd4a0f0a06dbaa85709 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 20/53] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 188a61b457fdea04b66c9bda4afd95967ca8a256 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 21/53] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 079dd4cefe79bbb1c15ccf3bc1d93b0f935a8a4c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 22/53] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..a13c5600d79 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,10 +1,10 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
 makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
  libXevie-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From b5f64290679e2a096ae99062263114dbbef18db2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 23/53] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From e39ecfab80ed9c098d2f1accad0c2b855db7ffae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 24/53] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From 8022285d5c8d79b697784c146eb8f0fd2c8d33fc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 25/53] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From e8d859d7b89a67ddf687bf05a17b91dee1723e40 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 26/53] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 64036541d367b58c6937f95a7495891ee2823029 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 27/53] polari: update to 3.36.2.

---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From 3a42ed03a0a865f7e1096db56120419549a4c52a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 28/53] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 2dafa50dbadf9db232ffbd6ecbbf9ac1fbb4a10a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 29/53] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 3115769f9972f2c0acf50d4b669b00d7ddb951d1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:48:46 +0600
Subject: [PATCH 30/53] simple-scan: update to 3.36.2.1.

---
 srcpkgs/simple-scan/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/simple-scan/template b/srcpkgs/simple-scan/template
index d0fc97903e5..5e07d63f08d 100644
--- a/srcpkgs/simple-scan/template
+++ b/srcpkgs/simple-scan/template
@@ -1,7 +1,6 @@
 # Template file for 'simple-scan'
 pkgname=simple-scan
-_gnome_version=3.36
-version=3.36.1
+version=3.36.2.1
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,5 +10,5 @@ short_desc="GTK Simple scanning utility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/simple-scan"
-distfiles="${GNOME_SITE}/${pkgname}/${_gnome_version}/${pkgname}-${version}.tar.xz"
-checksum=7427f0902253e01383941243f56ef987609943c537f92dd1043a53eb5eaaf92e
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*.*}/${pkgname}-${version}.tar.xz"
+checksum=bb8ce5750cd0405e14e4ac8b09f4a587c2fa3a418614ad425a6694c981bb012b

From d8ea99dc1da9937a7e356265e4be2d1e4557649b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 31/53] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 9c24d277b227b8b673a215da51a62adfc10efd1c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 32/53] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 503bfde6cb66b91b843a8b001eb9b364a6cd05e5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 33/53] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index abab82e702d..e8ff110382f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From cc6fce5061438c13b083468b4d13f645750d6ede Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 34/53] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index e8ff110382f..e3709b9ac6e 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 422a4381cb78bcfcb2ef8ba53e7a78300d34b8bf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 35/53] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 5760a59e41c43992a73118e20e38f2ccee7aee07 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 36/53] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 20 +++++++------
 2 files changed, 40 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..121a96c139d 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}

From 3d03c45e08d393bd005f3fac5d8fc536a7a16277 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 37/53] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From a3985b7a20705dd88bc5d024c833eff846f96520 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 38/53] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 +++++++-------
 .../patches/fix-cogl-egl-includes.patch       | 11 ---------
 srcpkgs/mutter/template                       | 24 +++++++++----------
 3 files changed, 21 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index e3709b9ac6e..209bf6a70ba 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2933,15 +2933,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..b648d2f230e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 9b3f1ae6ec6422d57a8fb4d25c0db1b3e69b571a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 39/53] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From 316ede0f58983c675faea664077566418c4fc879 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 40/53] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From e3b62aff5abd221215e9dde975de1bda86015058 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 41/53] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From b0ea727c5a933c9189adf222c2445cffed75d2cb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 42/53] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 ed 35 (delta 1), pack-reused 0          | 29 +++++++++++++++++++++++++
 srcpkgs/xdg-desktop-portal-gtk/template |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 ed 35 (delta 1), pack-reused 0

diff --git a/ed 35 (delta 1), pack-reused 0 b/ed 35 (delta 1), pack-reused 0
new file mode 100644
index 00000000000..3f8c6885b2d
--- /dev/null
+++ b/ed 35 (delta 1), pack-reused 0	
@@ -0,0 +1,29 @@
+^[[33mcommit f10ac93d4002da3c943e582bd656d4cdc7d61adb^[[m^[[33m (^[[m^[[1;36mHEAD^[[m^[[33m)^[[m
+Author: Nafis <mnabid.25@outlook.com>
+Date:   Thu Apr 30 13:46:16 2020 +0600
+
+    xdg-desktop-portal-gtk: update to 1.7.1.
+    
+    [ci skip]
+
+^[[1mdiff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1mindex dee0e46338..c711ad1533 100644^[[m
+^[[1m--- a/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1m+++ b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[36m@@ -1,6 +1,6 @@^[[m
+ # Template file for 'xdg-desktop-portal-gtk'^[[m
+ pkgname=xdg-desktop-portal-gtk^[[m
+^[[31m-version=1.6.0^[[m
+^[[32m+^[[m^[[32mversion=1.7.1^[[m
+ revision=1^[[m
+ build_style=gnu-configure^[[m
+ hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"^[[m
+^[[36m@@ -12,7 +12,7 @@^[[m ^[[mmaintainer="Duncaen <duncaen@voidlinux.org>"^[[m
+ license="LGPL-2.1-or-later"^[[m
+ homepage="https://github.com/flatpak/xdg-desktop-portal-gtk"^[[m
+ distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"^[[m
+^[[31m-checksum=956fd16608247e7119d4c6d95a6dc6578dce257d2f272d03b3498572257e2f76^[[m
+^[[32m+^[[m^[[32mchecksum=b6f6d28451e89488dc1121be9355f06686546f869b8d1a2d607c2f63bbd8bb5e^[[m
+ ^[[m
+ post_install() {^[[m
+ 	rm -rf "${DESTDIR}/usr/lib/systemd"^[[m
diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From dfd4d56cd901eeec59ebbe240c0fbb21e502877a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 43/53] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 11edb358a96ee9b136b8960d3f854083a0dfcda7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 44/53] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From c0e57cb2327382b4f6890d4f9ed4f21080be686d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 45/53] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From bb3695c029601da294cbb72712538554499f612a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 46/53] gnome-clocks: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From da4819f5f1e9cff6d0be1b3774dd677133221c7f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 47/53] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 781bc53b1164f164e1849c8a5fe77c48ba1a194f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 48/53] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From f8b4f768ea7ea5bab08761a70b1b43e3a239a385 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 49/53] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 15df776c70b64f70a83479670aef1728002fb878 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 50/53] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From f9c52c0ff8e3a2fb9c7641b1740fa697a6e44442 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 51/53] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 9ef11635618144ffa37b2a326b5c69ed23717fb9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 52/53] lutris: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From ac0ce35ccf8375cee2d8f5a4b4ba81676470c58c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 53/53] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (24 preceding siblings ...)
  2020-05-06 15:19 ` mnabid
@ 2020-05-06 16:37 ` not-chicken
  2020-05-07  6:45 ` [PR PATCH] [Updated] " mnabid
                   ` (61 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: not-chicken @ 2020-05-06 16:37 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1829 bytes --]

New comment by not-chicken on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-624757282

Comment:
```diff
diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d..099c4cc9d4 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf
```
@mnabid After gdm bump, I think this PR itself would be sorta complete, or I am missing something? I will create a separate PR for gjs and mozjs68.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (25 preceding siblings ...)
  2020-05-06 16:37 ` not-chicken
@ 2020-05-07  6:45 ` mnabid
  2020-05-07 13:43 ` mnabid
                   ` (60 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-07  6:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 366 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
**Waiting for `pipewire-0.3.4` to be merged (#20413) .**

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 713832 bytes --]

From 43f360da1b60fbcfeb00ece32b1c80055a68ca91 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/54] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index e18431a89ff..f2efffe8afe 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 641dbc6849b1c1c6eb7a8654bf3505ff7d23e35f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/54] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..029b87ff22b 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+       rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 634ab83c619e4c6dd57e7a31543e2de1586f42e7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/54] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From c193d67900d399243a8ebb6a080eefcf6f68ccf1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/54] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 65b801def484bbe88b604373116ca476a9bad43b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/54] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From e6bff7ec599c63fb00df0af69df925bce56235ce Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/54] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 615b8e6cd417c5d047aa4b20695e37031994a27c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/54] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 2759c8db36ec2ad02407efa11975855b6b06bb59 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 08/54] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From f472354817ca035a8f76376f7167c4601555f64f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 09/54] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 0a315e1d6cb486de6f95a29eb65ea6af5e515eb2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 10/54] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From c947f236fdc919950492e991049af305b09c7f2c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 11/54] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 85ad7d660861bab3599b2783183aa53d47c6190c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 12/54] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 50da058263abe90630fd0fbeb0685c7d7f9524dd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 13/54] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 05886e6f4a79d5e2ac063d4332526002183624f2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 14/54] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 0f101d36ac0c3bda8f5ebf24d08fe684f0949ac7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 15/54] gnome-settings-daemon: update to 3.36.1.

---
 srcpkgs/gnome-settings-daemon/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 65845c8f4481a743838374afbbad3caedf250438 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 16/54] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From a045cdce32091935786d53261aee1292e6c40327 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 17/54] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From aa87a9f4d58d0f9001624fde479fbdcd39d35fef Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 18/54] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 4dfbf88342aa81c6a66c5abce4568b49b6f23b9a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 19/54] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From be4b50e0c9813685b4042b891591163994e1db54 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 20/54] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 6768218fbe1f89278b5dab1f5fbdaac7c42a9bbc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 21/54] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From cb47a8501c476cecc7435afaf7f39d320ac6e928 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 22/54] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..a13c5600d79 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,10 +1,10 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
 makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
  libXevie-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 3e4d3e37536144307d1b67be46c3c74208e545c1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 23/54] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 4f332870b571ad5d1e4cb7e7565ee6f3d49f8046 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 24/54] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From e4cbc1eb79fb6c9cba39ab682cdca4176e0581d6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 25/54] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 05fcecb1f18d22f0d11e5fa86c920e54c9030927 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 26/54] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 66fbcd6d75efa0600e81bf868afc04364fb1e7aa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 27/54] polari: update to 3.36.2.

---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From fe415df81008dc1c70297aa20322eeea37a86049 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 28/54] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 731653f22bad9a2727f2d714ab33f86c22fcb31e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 29/54] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 375156b631d13f3b03f055a6eab59d0d9dd8194a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:48:46 +0600
Subject: [PATCH 30/54] simple-scan: update to 3.36.2.1.

---
 srcpkgs/simple-scan/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/simple-scan/template b/srcpkgs/simple-scan/template
index d0fc97903e5..5e07d63f08d 100644
--- a/srcpkgs/simple-scan/template
+++ b/srcpkgs/simple-scan/template
@@ -1,7 +1,6 @@
 # Template file for 'simple-scan'
 pkgname=simple-scan
-_gnome_version=3.36
-version=3.36.1
+version=3.36.2.1
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,5 +10,5 @@ short_desc="GTK Simple scanning utility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/simple-scan"
-distfiles="${GNOME_SITE}/${pkgname}/${_gnome_version}/${pkgname}-${version}.tar.xz"
-checksum=7427f0902253e01383941243f56ef987609943c537f92dd1043a53eb5eaaf92e
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*.*}/${pkgname}-${version}.tar.xz"
+checksum=bb8ce5750cd0405e14e4ac8b09f4a587c2fa3a418614ad425a6694c981bb012b

From 174d88165d72908df735f764520fd6c9b75fcb1a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 31/54] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From e5ffb23cc2e8ac86f0fc519c1777e7caf8992bcf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 32/54] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 72df5670327e1909cb52a04188a0314887649b35 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 33/54] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index f2efffe8afe..559359e1275 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 9d2f96dec29ccb24908e51d8fd246eeaec350ac2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 34/54] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 559359e1275..3a43e53e1a9 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 2071387c7fb04234156c8c4533e54596ae5d25aa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 35/54] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 71d1a3c9fa25b3286951e498c74cee99f09f999d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 36/54] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 20 +++++++------
 2 files changed, 40 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..121a96c139d 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}

From f64b284ed8c229aa00629a6a85ea857ecf53b768 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 37/54] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 66af43bf43fd581ba1851ad64715810c5cccb5f6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 38/54] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 +++++++-------
 .../patches/fix-cogl-egl-includes.patch       | 11 ---------
 srcpkgs/mutter/template                       | 24 +++++++++----------
 3 files changed, 21 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 3a43e53e1a9..417706a80f3 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2933,15 +2933,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..b648d2f230e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From b7528d1e8f703f8078593e07c786f9e56844dcfa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 39/54] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From 5dc21c320ef9268d961a8535861c57780a2042b6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 40/54] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From d9fd1674d5ea22a86245f17228d587a066b9110c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 41/54] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 07ead61eb8a4b8cf8aa0cabc22acf638b3995a74 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 42/54] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From b9c4cec7a8e4b4c25f2898910d694dde612aa76a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 43/54] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 ed 35 (delta 1), pack-reused 0          | 29 +++++++++++++++++++++++++
 srcpkgs/xdg-desktop-portal-gtk/template |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 ed 35 (delta 1), pack-reused 0

diff --git a/ed 35 (delta 1), pack-reused 0 b/ed 35 (delta 1), pack-reused 0
new file mode 100644
index 00000000000..3f8c6885b2d
--- /dev/null
+++ b/ed 35 (delta 1), pack-reused 0	
@@ -0,0 +1,29 @@
+^[[33mcommit f10ac93d4002da3c943e582bd656d4cdc7d61adb^[[m^[[33m (^[[m^[[1;36mHEAD^[[m^[[33m)^[[m
+Author: Nafis <mnabid.25@outlook.com>
+Date:   Thu Apr 30 13:46:16 2020 +0600
+
+    xdg-desktop-portal-gtk: update to 1.7.1.
+    
+    [ci skip]
+
+^[[1mdiff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1mindex dee0e46338..c711ad1533 100644^[[m
+^[[1m--- a/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1m+++ b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[36m@@ -1,6 +1,6 @@^[[m
+ # Template file for 'xdg-desktop-portal-gtk'^[[m
+ pkgname=xdg-desktop-portal-gtk^[[m
+^[[31m-version=1.6.0^[[m
+^[[32m+^[[m^[[32mversion=1.7.1^[[m
+ revision=1^[[m
+ build_style=gnu-configure^[[m
+ hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"^[[m
+^[[36m@@ -12,7 +12,7 @@^[[m ^[[mmaintainer="Duncaen <duncaen@voidlinux.org>"^[[m
+ license="LGPL-2.1-or-later"^[[m
+ homepage="https://github.com/flatpak/xdg-desktop-portal-gtk"^[[m
+ distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"^[[m
+^[[31m-checksum=956fd16608247e7119d4c6d95a6dc6578dce257d2f272d03b3498572257e2f76^[[m
+^[[32m+^[[m^[[32mchecksum=b6f6d28451e89488dc1121be9355f06686546f869b8d1a2d607c2f63bbd8bb5e^[[m
+ ^[[m
+ post_install() {^[[m
+ 	rm -rf "${DESTDIR}/usr/lib/systemd"^[[m
diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From fa70a0ceb1b556200df5b725836b19db0c6521ac Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 44/54] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From df85dd706e992122cefd20632b539c284896d038 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 45/54] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 88ca9084945030b14ec801cffc81e4be56ece62e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 46/54] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 13ff655d8c9fe84ea4a1f9d05cc7a7232a5b75cf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 47/54] gnome-clocks: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From d65ad1de75b9b32fe25d656a13f97d0e0da01c15 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 48/54] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From e5378edec0cd8282e22e3b170b1d6b24cff687d9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 49/54] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 49b43c52cb064b7b6152ec4d8a4d412d9b6ce043 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 50/54] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 3136aa776add34102c0347f5a7907ba96cbf5015 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 51/54] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From eda1557652678377011e09e2e287b4e726f93985 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 52/54] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From a7392abf3bb9686ef3e92ba6ef70a6ebde71500a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 53/54] lutris: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From 97ca1bd27986cf350206967e201db80bfd100933 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 54/54] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (26 preceding siblings ...)
  2020-05-07  6:45 ` [PR PATCH] [Updated] " mnabid
@ 2020-05-07 13:43 ` mnabid
  2020-05-07 18:10 ` mnabid
                   ` (59 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-07 13:43 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 366 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
**Waiting for `pipewire-0.3.4` to be merged (#20413) .**

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 713900 bytes --]

From 43f360da1b60fbcfeb00ece32b1c80055a68ca91 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/54] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index e18431a89ff..f2efffe8afe 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 641dbc6849b1c1c6eb7a8654bf3505ff7d23e35f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/54] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..029b87ff22b 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+       rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 634ab83c619e4c6dd57e7a31543e2de1586f42e7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/54] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From c193d67900d399243a8ebb6a080eefcf6f68ccf1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/54] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 65b801def484bbe88b604373116ca476a9bad43b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/54] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From e6bff7ec599c63fb00df0af69df925bce56235ce Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/54] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 615b8e6cd417c5d047aa4b20695e37031994a27c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/54] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 2759c8db36ec2ad02407efa11975855b6b06bb59 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 08/54] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From f472354817ca035a8f76376f7167c4601555f64f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 09/54] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 0a315e1d6cb486de6f95a29eb65ea6af5e515eb2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 10/54] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From c947f236fdc919950492e991049af305b09c7f2c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 11/54] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 85ad7d660861bab3599b2783183aa53d47c6190c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 12/54] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 50da058263abe90630fd0fbeb0685c7d7f9524dd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 13/54] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 05886e6f4a79d5e2ac063d4332526002183624f2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 14/54] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 0f101d36ac0c3bda8f5ebf24d08fe684f0949ac7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 15/54] gnome-settings-daemon: update to 3.36.1.

---
 srcpkgs/gnome-settings-daemon/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 65845c8f4481a743838374afbbad3caedf250438 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 16/54] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From a045cdce32091935786d53261aee1292e6c40327 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 17/54] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From aa87a9f4d58d0f9001624fde479fbdcd39d35fef Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 18/54] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 4dfbf88342aa81c6a66c5abce4568b49b6f23b9a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 19/54] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From be4b50e0c9813685b4042b891591163994e1db54 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 20/54] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 6768218fbe1f89278b5dab1f5fbdaac7c42a9bbc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 21/54] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From cb47a8501c476cecc7435afaf7f39d320ac6e928 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 22/54] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..a13c5600d79 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,10 +1,10 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
 makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
  libXevie-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 3e4d3e37536144307d1b67be46c3c74208e545c1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 23/54] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 4f332870b571ad5d1e4cb7e7565ee6f3d49f8046 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 24/54] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From e4cbc1eb79fb6c9cba39ab682cdca4176e0581d6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 25/54] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 05fcecb1f18d22f0d11e5fa86c920e54c9030927 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 26/54] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 66fbcd6d75efa0600e81bf868afc04364fb1e7aa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 27/54] polari: update to 3.36.2.

---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From fe415df81008dc1c70297aa20322eeea37a86049 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 28/54] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 731653f22bad9a2727f2d714ab33f86c22fcb31e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 29/54] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 375156b631d13f3b03f055a6eab59d0d9dd8194a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:48:46 +0600
Subject: [PATCH 30/54] simple-scan: update to 3.36.2.1.

---
 srcpkgs/simple-scan/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/simple-scan/template b/srcpkgs/simple-scan/template
index d0fc97903e5..5e07d63f08d 100644
--- a/srcpkgs/simple-scan/template
+++ b/srcpkgs/simple-scan/template
@@ -1,7 +1,6 @@
 # Template file for 'simple-scan'
 pkgname=simple-scan
-_gnome_version=3.36
-version=3.36.1
+version=3.36.2.1
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,5 +10,5 @@ short_desc="GTK Simple scanning utility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/simple-scan"
-distfiles="${GNOME_SITE}/${pkgname}/${_gnome_version}/${pkgname}-${version}.tar.xz"
-checksum=7427f0902253e01383941243f56ef987609943c537f92dd1043a53eb5eaaf92e
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*.*}/${pkgname}-${version}.tar.xz"
+checksum=bb8ce5750cd0405e14e4ac8b09f4a587c2fa3a418614ad425a6694c981bb012b

From 174d88165d72908df735f764520fd6c9b75fcb1a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 31/54] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From e5ffb23cc2e8ac86f0fc519c1777e7caf8992bcf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 32/54] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 72df5670327e1909cb52a04188a0314887649b35 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 33/54] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index f2efffe8afe..559359e1275 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 9d2f96dec29ccb24908e51d8fd246eeaec350ac2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 34/54] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 559359e1275..3a43e53e1a9 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 2071387c7fb04234156c8c4533e54596ae5d25aa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 35/54] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 296255a47efa7b7d590bf7f6f242ddd70f2629e5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 36/54] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 22 +++++++++------
 2 files changed, 41 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..8add09876aa 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}

From a3fa3f4e91dc3e7c2420e3c97ab13346d42045a5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 37/54] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 10dd9bf1e73bc6873bd07844995781f1b5328e0d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 38/54] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 +++++++-------
 .../patches/fix-cogl-egl-includes.patch       | 11 ---------
 srcpkgs/mutter/template                       | 24 +++++++++----------
 3 files changed, 21 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 3a43e53e1a9..417706a80f3 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2933,15 +2933,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..b648d2f230e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From e1636d7f21e5a9c5f853fae37cc1b962504d468c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 39/54] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From e441509936ab3f5bfaf18378cb265d8cce76d39b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 40/54] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From d4cc2877dac487e89c8c72347d013ade0667f871 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 41/54] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 30dfab580fd412c011267346e85a05d8bd8a7093 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 42/54] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 4214d254bc1f7eeadffbc6cbed08d21474fb1fa4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 43/54] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 ed 35 (delta 1), pack-reused 0          | 29 +++++++++++++++++++++++++
 srcpkgs/xdg-desktop-portal-gtk/template |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 ed 35 (delta 1), pack-reused 0

diff --git a/ed 35 (delta 1), pack-reused 0 b/ed 35 (delta 1), pack-reused 0
new file mode 100644
index 00000000000..3f8c6885b2d
--- /dev/null
+++ b/ed 35 (delta 1), pack-reused 0	
@@ -0,0 +1,29 @@
+^[[33mcommit f10ac93d4002da3c943e582bd656d4cdc7d61adb^[[m^[[33m (^[[m^[[1;36mHEAD^[[m^[[33m)^[[m
+Author: Nafis <mnabid.25@outlook.com>
+Date:   Thu Apr 30 13:46:16 2020 +0600
+
+    xdg-desktop-portal-gtk: update to 1.7.1.
+    
+    [ci skip]
+
+^[[1mdiff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1mindex dee0e46338..c711ad1533 100644^[[m
+^[[1m--- a/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[1m+++ b/srcpkgs/xdg-desktop-portal-gtk/template^[[m
+^[[36m@@ -1,6 +1,6 @@^[[m
+ # Template file for 'xdg-desktop-portal-gtk'^[[m
+ pkgname=xdg-desktop-portal-gtk^[[m
+^[[31m-version=1.6.0^[[m
+^[[32m+^[[m^[[32mversion=1.7.1^[[m
+ revision=1^[[m
+ build_style=gnu-configure^[[m
+ hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"^[[m
+^[[36m@@ -12,7 +12,7 @@^[[m ^[[mmaintainer="Duncaen <duncaen@voidlinux.org>"^[[m
+ license="LGPL-2.1-or-later"^[[m
+ homepage="https://github.com/flatpak/xdg-desktop-portal-gtk"^[[m
+ distfiles="https://github.com/flatpak/${pkgname}/releases/download/${version}/${pkgname}-${version}.tar.xz"^[[m
+^[[31m-checksum=956fd16608247e7119d4c6d95a6dc6578dce257d2f272d03b3498572257e2f76^[[m
+^[[32m+^[[m^[[32mchecksum=b6f6d28451e89488dc1121be9355f06686546f869b8d1a2d607c2f63bbd8bb5e^[[m
+ ^[[m
+ post_install() {^[[m
+ 	rm -rf "${DESTDIR}/usr/lib/systemd"^[[m
diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From e1fe366460c8f6ca2075b7e26d8aa4c8a93e850f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 44/54] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From b3771e4558308b173f1949e5b441de741aad3520 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 45/54] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From efd3ee36be1441c5543af593d16db62187b2f9a2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 46/54] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 86af444213027ba328cf8f76131cece6a29b703e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 47/54] gnome-clocks: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From dfa3d31939d2f17adb24c7b4768ee4e709730e23 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 48/54] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 068499706272218512a1c371a306391aedd5426e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 49/54] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 9a7f481579662e340658bec0964089a34e545ca1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 50/54] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 73938a03a3966f982c0c320fd08b4d4fe0afa2b2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 51/54] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 23903dad6dc53cf49791849b9865e7403b960e36 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 52/54] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From bb4f5ec2f542bde8c5dbe05614126284858fd389 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 53/54] lutris: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From 85054fd88b4c84c3a0476fb9d7275fef2b75d8c8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 54/54] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (27 preceding siblings ...)
  2020-05-07 13:43 ` mnabid
@ 2020-05-07 18:10 ` mnabid
  2020-05-08  8:06 ` toluschr
                   ` (58 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-07 18:10 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 366 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
**Waiting for `pipewire-0.3.4` to be merged (#20413) .**

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 712250 bytes --]

From 43f360da1b60fbcfeb00ece32b1c80055a68ca91 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/54] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index e18431a89ff..f2efffe8afe 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 641dbc6849b1c1c6eb7a8654bf3505ff7d23e35f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/54] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..029b87ff22b 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+       rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 634ab83c619e4c6dd57e7a31543e2de1586f42e7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/54] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From c193d67900d399243a8ebb6a080eefcf6f68ccf1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/54] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 65b801def484bbe88b604373116ca476a9bad43b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/54] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From e6bff7ec599c63fb00df0af69df925bce56235ce Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/54] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 615b8e6cd417c5d047aa4b20695e37031994a27c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/54] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 2759c8db36ec2ad02407efa11975855b6b06bb59 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 08/54] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From f472354817ca035a8f76376f7167c4601555f64f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 09/54] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 0a315e1d6cb486de6f95a29eb65ea6af5e515eb2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 10/54] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From c947f236fdc919950492e991049af305b09c7f2c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 11/54] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 85ad7d660861bab3599b2783183aa53d47c6190c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 12/54] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 50da058263abe90630fd0fbeb0685c7d7f9524dd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 13/54] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 05886e6f4a79d5e2ac063d4332526002183624f2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 14/54] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 0f101d36ac0c3bda8f5ebf24d08fe684f0949ac7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 15/54] gnome-settings-daemon: update to 3.36.1.

---
 srcpkgs/gnome-settings-daemon/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 65845c8f4481a743838374afbbad3caedf250438 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 16/54] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From a045cdce32091935786d53261aee1292e6c40327 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 17/54] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From aa87a9f4d58d0f9001624fde479fbdcd39d35fef Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 18/54] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 4dfbf88342aa81c6a66c5abce4568b49b6f23b9a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 19/54] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From be4b50e0c9813685b4042b891591163994e1db54 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 20/54] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 6768218fbe1f89278b5dab1f5fbdaac7c42a9bbc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 21/54] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From cb47a8501c476cecc7435afaf7f39d320ac6e928 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 22/54] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..a13c5600d79 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,10 +1,10 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
 makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
  libXevie-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 3e4d3e37536144307d1b67be46c3c74208e545c1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 23/54] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 4f332870b571ad5d1e4cb7e7565ee6f3d49f8046 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 24/54] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From e4cbc1eb79fb6c9cba39ab682cdca4176e0581d6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 25/54] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 05fcecb1f18d22f0d11e5fa86c920e54c9030927 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 26/54] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 66fbcd6d75efa0600e81bf868afc04364fb1e7aa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 27/54] polari: update to 3.36.2.

---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From fe415df81008dc1c70297aa20322eeea37a86049 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 28/54] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 731653f22bad9a2727f2d714ab33f86c22fcb31e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 29/54] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 375156b631d13f3b03f055a6eab59d0d9dd8194a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:48:46 +0600
Subject: [PATCH 30/54] simple-scan: update to 3.36.2.1.

---
 srcpkgs/simple-scan/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/simple-scan/template b/srcpkgs/simple-scan/template
index d0fc97903e5..5e07d63f08d 100644
--- a/srcpkgs/simple-scan/template
+++ b/srcpkgs/simple-scan/template
@@ -1,7 +1,6 @@
 # Template file for 'simple-scan'
 pkgname=simple-scan
-_gnome_version=3.36
-version=3.36.1
+version=3.36.2.1
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,5 +10,5 @@ short_desc="GTK Simple scanning utility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/simple-scan"
-distfiles="${GNOME_SITE}/${pkgname}/${_gnome_version}/${pkgname}-${version}.tar.xz"
-checksum=7427f0902253e01383941243f56ef987609943c537f92dd1043a53eb5eaaf92e
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*.*}/${pkgname}-${version}.tar.xz"
+checksum=bb8ce5750cd0405e14e4ac8b09f4a587c2fa3a418614ad425a6694c981bb012b

From 174d88165d72908df735f764520fd6c9b75fcb1a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 31/54] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From e5ffb23cc2e8ac86f0fc519c1777e7caf8992bcf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 32/54] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 72df5670327e1909cb52a04188a0314887649b35 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 33/54] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index f2efffe8afe..559359e1275 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 9d2f96dec29ccb24908e51d8fd246eeaec350ac2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 34/54] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 559359e1275..3a43e53e1a9 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 2071387c7fb04234156c8c4533e54596ae5d25aa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 35/54] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 296255a47efa7b7d590bf7f6f242ddd70f2629e5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 36/54] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 22 +++++++++------
 2 files changed, 41 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..8add09876aa 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}

From a3fa3f4e91dc3e7c2420e3c97ab13346d42045a5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 37/54] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 10dd9bf1e73bc6873bd07844995781f1b5328e0d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 38/54] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 +++++++-------
 .../patches/fix-cogl-egl-includes.patch       | 11 ---------
 srcpkgs/mutter/template                       | 24 +++++++++----------
 3 files changed, 21 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 3a43e53e1a9..417706a80f3 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2933,15 +2933,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..b648d2f230e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
  -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From e1636d7f21e5a9c5f853fae37cc1b962504d468c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 39/54] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From e441509936ab3f5bfaf18378cb265d8cce76d39b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 40/54] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From d4cc2877dac487e89c8c72347d013ade0667f871 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 41/54] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 30dfab580fd412c011267346e85a05d8bd8a7093 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 42/54] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 6ff7dfb02a166f1bb826730707498e13fba76cf1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 43/54] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 76009a5e477c11af2b0e3745568e772e69d51712 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 44/54] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 4b727169a45dcc0d08843289cf504fcaba523b90 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 45/54] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From a9eb195698bb82e80dc69a14fd111febf9a2d0df Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 46/54] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 3c4164f7251f0f1531b82047323571c56a901a3e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 47/54] gnome-clocks: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From 2120cd329edb4006b93d7707524be7147e11d9d4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 48/54] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From dc0fecb49b0815fd6daedda597c847e8950223ef Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 49/54] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From d54c1c520e4aee57df7ed48840120052d8189981 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 50/54] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 61d800bf7125c61f34b08e3d6bc686ed9df37826 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 51/54] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From e949b4a613b14f127f375270c97c081a880076e2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 52/54] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From a3d86b633e6c968620b38edfcb0bf4b7f9446ccf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 53/54] lutris: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From e62ed4cc1c436baac4e967af1652191fa1cf7606 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 54/54] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (28 preceding siblings ...)
  2020-05-07 18:10 ` mnabid
@ 2020-05-08  8:06 ` toluschr
  2020-05-08  8:06 ` toluschr
                   ` (57 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: toluschr @ 2020-05-08  8:06 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 208 bytes --]

New comment by toluschr on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-625695651

Comment:
`gnome-session` is linked against `libgnome-desktop-3.so.19`, too.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (29 preceding siblings ...)
  2020-05-08  8:06 ` toluschr
@ 2020-05-08  8:06 ` toluschr
  2020-05-08 12:00 ` mnabid
                   ` (56 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: toluschr @ 2020-05-08  8:06 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 208 bytes --]

New comment by toluschr on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-625695651

Comment:
`gnome-session` is linked against `libgnome-desktop-3.so.19`, too.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (30 preceding siblings ...)
  2020-05-08  8:06 ` toluschr
@ 2020-05-08 12:00 ` mnabid
  2020-05-08 15:22 ` toluschr
                   ` (55 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-08 12:00 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 293 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-625781760

Comment:
@not-chicken Is GNOME Wayland session working for you? I am testing 3.36 now and I can't see the wayland session in login screen. X11 is working though. 

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (31 preceding siblings ...)
  2020-05-08 12:00 ` mnabid
@ 2020-05-08 15:22 ` toluschr
  2020-05-08 15:24 ` not-chicken
                   ` (54 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: toluschr @ 2020-05-08 15:22 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 517 bytes --]

New comment by toluschr on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-625867906

Comment:
![17:05:09](https://user-images.githubusercontent.com/44272603/81419194-2b690180-914e-11ea-8810-867250ee80c9.png)

Compiles ans works fine!

Cloned using `git pull origin pull/21382/head pull/20413/head pull/21716/head`
Resolved merge conflicts (`srcpkgs/mutter/template`)
```
version=3.36.2
revision=1
```
and removed ` srcpkgs/mutter/patches/pipewire-0.3.patch`


^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (32 preceding siblings ...)
  2020-05-08 15:22 ` toluschr
@ 2020-05-08 15:24 ` not-chicken
  2020-05-08 18:11 ` [PR PATCH] [Updated] " mnabid
                   ` (53 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: not-chicken @ 2020-05-08 15:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 510 bytes --]

New comment by not-chicken on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-625868946

Comment:
> @not-chicken Is GNOME Wayland session working for you? I am testing 3.36 now and I can't see the wayland session in login screen. X11 is working though.

It wasn't. I thought it was some local issue on my vm but it isn't.  See https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1103

Recompiled mutter with `-Dxwayland_initfd=disabled` and it works now :D

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (33 preceding siblings ...)
  2020-05-08 15:24 ` not-chicken
@ 2020-05-08 18:11 ` mnabid
  2020-05-08 18:23 ` mnabid
                   ` (52 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-08 18:11 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 489 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
**Waiting for [`pipewire-0.3.4`](https://github.com/void-linux/void-packages/pull/20413) and [`gjs-1.65.2`](https://github.com/void-linux/void-packages/pull/21716) to be merged.**

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 712418 bytes --]

From e176d269a028385714d29b5c256ddefd629e43db Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/54] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index fa8af66f925..eb153b61dfe 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 4490119d6d2a4f1cf37b481d3e7f7f0a9e50a4ec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/54] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..029b87ff22b 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+       rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 175622c159a4525c7810d9c50feccd559a642ea0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/54] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From 31b331078e08c617563e5f845f277ae8c978dbdb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/54] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 25b33215b3a024e1b05c658f785235782f52e1f2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/54] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From e33d4bb090df11a85a3bb89060018eda49855a12 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/54] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 44bdbd83c0881e9321c44595339c9bf49516d566 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/54] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From d30c4fba9ed676fa04556a7e3a1daa1710f2e9e0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 08/54] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From a4ec032733f43aa69a93fe2f3bb1e2af49e42813 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 09/54] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 2d2b7fa33e90d1516590e217b70025385632d014 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 10/54] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 50306155bbe8d00ec313e8efa73042c80b2716cd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 11/54] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 97db36c92a87ced4460a8cfc168f96d445bb0c4b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 12/54] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 6f1ad11d99f66dfccb5c23631ba12f2616cb138b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 13/54] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 0becfc8a8ddaf2b8d16c23685d30576c0489ee8f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 14/54] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 8c71dbd21bb0c328910f609a310b07b975658598 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 15/54] gnome-settings-daemon: update to 3.36.1.

---
 srcpkgs/gnome-settings-daemon/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 3b94e447546efbb9dfb7d91a78dbf524c43247b4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 16/54] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 5794c8852794672147c8c74a1b091c1f1e7b7714 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 17/54] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From 61aab5b8c0782e80131935a513ab8f5f13b66b7d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 18/54] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From ae8baf2b0f25bae3f0e4fd9f80873176c3820709 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 19/54] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From a26f0a59ab6d6dbfacbcc2addf26bc80d503e3d8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 20/54] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From f42a29864cdd7610df7bb91560c7b4106253907e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 21/54] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 3c5ecaa4f6bf1b1e8415e48ca0aa95d8d3cacc2d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 22/54] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..a13c5600d79 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,10 +1,10 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
 makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
  libXevie-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 49f40795426d4fc80dedd756b55c447cf7b26ef4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 23/54] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From d950ce5381980fe1f4e14a40b4dc4f654e03904b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 24/54] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From 7fe8061f71745c0ccf7ecd623fedc12449331262 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 25/54] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 19c1b33dfcd672fd6ec5979e9e5cf21c69da5f7d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 26/54] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 8bd90e754f77a55d483c18c5537d16c8b5b91201 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 27/54] polari: update to 3.36.2.

---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From 77954ffd0657f671745d830735474b5518e37c8e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 28/54] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 2a940b7e613091b833d2e31dd5ff9d0f31d4ef23 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 29/54] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 94b650d41b357590d72ddd8c288080f3e0efb953 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:48:46 +0600
Subject: [PATCH 30/54] simple-scan: update to 3.36.2.1.

---
 srcpkgs/simple-scan/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/simple-scan/template b/srcpkgs/simple-scan/template
index d0fc97903e5..5e07d63f08d 100644
--- a/srcpkgs/simple-scan/template
+++ b/srcpkgs/simple-scan/template
@@ -1,7 +1,6 @@
 # Template file for 'simple-scan'
 pkgname=simple-scan
-_gnome_version=3.36
-version=3.36.1
+version=3.36.2.1
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,5 +10,5 @@ short_desc="GTK Simple scanning utility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/simple-scan"
-distfiles="${GNOME_SITE}/${pkgname}/${_gnome_version}/${pkgname}-${version}.tar.xz"
-checksum=7427f0902253e01383941243f56ef987609943c537f92dd1043a53eb5eaaf92e
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*.*}/${pkgname}-${version}.tar.xz"
+checksum=bb8ce5750cd0405e14e4ac8b09f4a587c2fa3a418614ad425a6694c981bb012b

From e883069a0748f1aab7d4debb280ff390262a3309 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 31/54] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 523ab1d0113ecf18ca6d784261dbee4a2be95f98 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 32/54] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 3fadd3ae8ed2d2ed2c19f63c78aa89901c89a680 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 33/54] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index eb153b61dfe..ac364e9bd8b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From a64cfedb6b94efa0871fd9244ba9764db6402a49 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 34/54] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index ac364e9bd8b..b909a14a4e7 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From c8e87dd1e2b478f3e964aa0c2839027579bbe3b8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 35/54] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 6df6df07454c990405960e5d9f4af3d0085b64b4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 36/54] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 22 +++++++++------
 2 files changed, 41 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..8add09876aa 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}

From c28db4b1d30f745749f982aec5b8b348587086c7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 37/54] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 9397b22e00393bbde831c266c028a20d4a471295 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 38/54] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 28 +++++++++----------
 3 files changed, 23 insertions(+), 34 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index b909a14a4e7..564673cc118 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2933,15 +2933,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..7c14829af9e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
-configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true -Dprofiler=false
+ -Dintrospection=true -Dxwayland_initfd=disabled -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From bf09666a1e153ce2057e16108e6d8512f0f51a8f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 39/54] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From 1c6b807794ac1d9c376f78229bc21d9f322b06fb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 40/54] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 64be0dea67d5a5d74f7fae5d1cb1f74e80fde175 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 41/54] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 50e2da8432ee54dd8735d43810a8e239e6f9c4ca Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 42/54] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From e2417eafe5245de63af3b3403222acf698ace6f0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 43/54] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 02105d9dd75d5e243a3d92bc8daa48a00575195c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 44/54] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 045e880edcfc91fb88bf0b135c4ab9c6b4d12f19 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 45/54] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 7adbabbffc763e0f9fe15cd44e38c00bf7f6194b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 46/54] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From ef05d5cda1ce2737422c5aa3b0de7889cb59a570 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 47/54] gnome-clocks: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-clocks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..c67fb634cb8 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config intltool itstool glib-devel vala"

From c2d076dc74cd544112de0cc69cf96861b3d8e60c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 48/54] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From cea527da8723d54bdb4345ea4f3b59597f883622 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 49/54] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From dc845ab2c7a16f2356d269e5377bd51fce71b09a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 50/54] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From aa2c7f0c25a604987912961f9d2e4eb0d3c6c59b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 51/54] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From a1bf576c5f366bc4c4de7a70229ab623cf49036f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 52/54] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From e5a21beb04408a2d3200d1942908f3d8e14486c2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 53/54] lutris: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From ac592493b64c3fca62af2dfbce5f328691f2d6a1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 54/54] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (34 preceding siblings ...)
  2020-05-08 18:11 ` [PR PATCH] [Updated] " mnabid
@ 2020-05-08 18:23 ` mnabid
  2020-05-10 14:37 ` mnabid
                   ` (51 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-08 18:23 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 271 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-625951391

Comment:
> Recompiled mutter with -Dxwayland_initfd=disabled and it works now :D

Works for me too. I've added the changes. Thanks ! :+1: 

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (35 preceding siblings ...)
  2020-05-08 18:23 ` mnabid
@ 2020-05-10 14:37 ` mnabid
  2020-05-10 15:14 ` not-chicken
                   ` (50 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-10 14:37 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 700 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626338068

Comment:
Okay...so I'm running **GNOME 3.36** in Void for over two days now. So far it's doing good, despite some issues here and there. 
I can't change brightness neither from my keyboard nor from the brightness slider. (manually calling `gsd-backlight-helper` works, and `xbacklight` too. )
And many of my themes are broken, but that's another story :wink: 

![GNOME 3.36](https://user-images.githubusercontent.com/62117272/81501559-e6ce9900-92fa-11ea-90a2-ace1d331e963.png)

P.S. : The Void logo patch is borrowed from Manjaro and **I've not pushed it here**. 

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (36 preceding siblings ...)
  2020-05-10 14:37 ` mnabid
@ 2020-05-10 15:14 ` not-chicken
  2020-05-10 15:36 ` toluschr
                   ` (49 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: not-chicken @ 2020-05-10 15:14 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 716 bytes --]

New comment by not-chicken on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626343193

Comment:
@mnabid Looks neato! 
> P.S. : The Void logo patch is borrowed from Manjaro and I've not pushed it here.

I too use one stolen from solus :D  

Btw, apparently `gdm` crashes if either one of `gnome-session`, `adwaita-icon-theme` or any fonts aren't installed. Package `gnome-themes-extra` has `adwaita-icon-theme` and `cantarell-fonts` as rundeps.
So technically `gnome-session` and `gnome-themes-extra` can probably be added as rundeps to `gdm`.

Though for better or worse, that makes it possible to have a working minimal gnome setup by installing `gdm` alone!

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (37 preceding siblings ...)
  2020-05-10 15:14 ` not-chicken
@ 2020-05-10 15:36 ` toluschr
  2020-05-10 16:37 ` not-chicken
                   ` (48 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: toluschr @ 2020-05-10 15:36 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 241 bytes --]

New comment by toluschr on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626346223

Comment:
@not-chicken So thats what caused my gdm to crash. Seems like this should be added as a dependency.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (38 preceding siblings ...)
  2020-05-10 15:36 ` toluschr
@ 2020-05-10 16:37 ` not-chicken
  2020-05-10 17:03 ` toluschr
                   ` (47 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: not-chicken @ 2020-05-10 16:37 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 498 bytes --]

New comment by not-chicken on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626354737

Comment:
> @not-chicken So thats what caused my gdm to crash. Seems like this should be added as a dependency.

I think so too. We'll also need to update the docs section if we do that, could you please check if the [instructions](https://github.com/not-chicken/void-docs/commit/4bfd62a3c63ef565abf7116a9008ccba78dfc97f) for launching via console work for you?

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (39 preceding siblings ...)
  2020-05-10 16:37 ` not-chicken
@ 2020-05-10 17:03 ` toluschr
  2020-05-10 22:47 ` [PR PATCH] [Updated] " mnabid
                   ` (46 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: toluschr @ 2020-05-10 17:03 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 462 bytes --]

New comment by toluschr on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626358307

Comment:
I launch my GNOME using this
```sh
export XDG_CURRENT_DESKTOP=GNOME
export XDG_SESSION_TYPE=x11
export GDK_BACKEND=x11

exec dbus-launch --exit-with-session gnome-session
```
The `dbus-launch` makes webbrowsers, like chromium able to launch nautilus when clicking `Show in folder`. At least it does on my system.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (40 preceding siblings ...)
  2020-05-10 17:03 ` toluschr
@ 2020-05-10 22:47 ` mnabid
  2020-05-10 23:54 ` flexibeast
                   ` (45 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-10 22:47 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 489 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
**Waiting for [`pipewire-0.3.4`](https://github.com/void-linux/void-packages/pull/20413) and [`gjs-1.65.2`](https://github.com/void-linux/void-packages/pull/21716) to be merged.**

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 712712 bytes --]

From fa92441732d3a9899bb3cd839d19bab0ab486f8a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/54] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 8342e117092..5c0e662f978 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1177,7 +1177,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From fb2d471dc0d456f4de9f166613e76f7173dcbb60 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/54] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..029b87ff22b 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+       rm -rf ${DESTDIR}/usr/lib/systemd
+}

From bcfc9c2a27f26a900d29d561a25ea05e5527e617 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/54] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From a79e840dfeb29e98fa9838a94c246b8be12fd25b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/54] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 671c9943e2a116f72cac9bc18eeb558b6a7a195c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/54] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 7fcb1432a8c5e53673c63e9d60af722396209e42 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/54] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 968449d9fe10e57adbb0984ddddaac62a5b2bb38 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/54] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 16c853bdafdafa562249f216c3f22e369c1fe683 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 08/54] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From c80861cb7cda9036b9b2b3004e11a8fdf73ba000 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 09/54] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 0c4bdd964a2fa3ebddf1d3b927b1105c29b51c31 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 10/54] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 99144b37e0341733102b734c144a943c2cac5fe1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 11/54] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From 70be02e8227bf7fba29886db4a387c937a56fa8c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 12/54] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 82bcdc0b9bb7a7fbba2178da1a8fd6b23c10bfb7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 13/54] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From cc760e5b2178789ecd77e5c91e3f0142c0f23075 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 14/54] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 87241bbe8d8bdff9c1165c1df0ef1ab09a8748c1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 15/54] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From aba738186392b1ed6d494f726f580e4d0027d6ff Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 16/54] gnome-settings-daemon: update to 3.36.1.

---
 srcpkgs/gnome-settings-daemon/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From b630e06df8410965c46be79d83c8f6e1fb086ffc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 17/54] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 27782ac62e60ea2d703379a528732853c92ec74a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 18/54] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From b47e001b82ca99d37ca8839e7b72dfbdc73f2b2b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 19/54] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 2f16081d5146ae496d4b925e6513cb4effb158bb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 20/54] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From d55cd5c08f0aa1459a730aad761ecbc748078670 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 21/54] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From c52f069db7ea2be3c45085c9c834d3e340c4ad76 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 22/54] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 51ef0787827ddf0c92af456bb31b427d6892442c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 23/54] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..a13c5600d79 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,10 +1,10 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
 makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
  libXevie-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 69b1021a152da03a65d975edee1d93af98272b26 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 24/54] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From c08f4165c21f1f5e89795061316a30164ed0346d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 25/54] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From 451a5b6f0fbd0f1960175ab44c7be091eeee26f4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 26/54] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From e9612efb9ca5527f79763b7bcec5b6174e9a9be1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 27/54] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 8d316bd98e829e45be0e4162bb5638022feaa520 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 28/54] polari: update to 3.36.2.

---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From 4a4206e02c5f5a5572b4ad054a4f0e0d6c746ca1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 29/54] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 7af5ef37a02ddd44a34aedd83cc6876bbbb4ef73 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 30/54] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 2d87cc28ce11b9500f265529b9ed98b5ad639e94 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:48:46 +0600
Subject: [PATCH 31/54] simple-scan: update to 3.36.2.1.

---
 srcpkgs/simple-scan/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/simple-scan/template b/srcpkgs/simple-scan/template
index d0fc97903e5..5e07d63f08d 100644
--- a/srcpkgs/simple-scan/template
+++ b/srcpkgs/simple-scan/template
@@ -1,7 +1,6 @@
 # Template file for 'simple-scan'
 pkgname=simple-scan
-_gnome_version=3.36
-version=3.36.1
+version=3.36.2.1
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,5 +10,5 @@ short_desc="GTK Simple scanning utility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/simple-scan"
-distfiles="${GNOME_SITE}/${pkgname}/${_gnome_version}/${pkgname}-${version}.tar.xz"
-checksum=7427f0902253e01383941243f56ef987609943c537f92dd1043a53eb5eaaf92e
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*.*}/${pkgname}-${version}.tar.xz"
+checksum=bb8ce5750cd0405e14e4ac8b09f4a587c2fa3a418614ad425a6694c981bb012b

From 0929956b33b2994502cac0b2909f1eba0ea72447 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 32/54] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 77d1e8248ea37bdbaebe3dde1e49bbf3df44e865 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 33/54] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From bc38c83dca0bc4a0dc8751524c68252656758f9a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 34/54] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 5c0e662f978..bf82ac678c0 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 2ff295f6e4dde07d667dee350786d03cc9c278bb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 35/54] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index bf82ac678c0..d448a4efd39 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 75dcdcc40256b57401a88c4ffbbb0901fb65b00c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 36/54] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 0e1318246b15d2fb55de4b0379a9cc6e3ac9b88a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 37/54] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 22 +++++++++------
 2 files changed, 41 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..8add09876aa 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,24 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}

From 58a6ce45c72c15fef36cf04b29064be2b1785a28 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 38/54] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From ee476b391ca90e7ea1a42a68c2f67f3fb4e15b80 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 39/54] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 28 +++++++++----------
 3 files changed, 23 insertions(+), 34 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index d448a4efd39..6762c0ffc71 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2934,15 +2934,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..7c14829af9e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
-configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true -Dprofiler=false
+ -Dintrospection=true -Dxwayland_initfd=disabled -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 6b8558159158213bd15c564b825124805f580fe6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 40/54] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From cb0853bf273c67a1eaaee106acd6acd9bac0256a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 41/54] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 3b5c1f8aac16e6201f1f4effb177df7b407b700b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 42/54] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 028d5d6dd199b1f3e908643ebf872afbb4019768 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 43/54] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 779cf8a62c69e469f030db8f7a59b13dfa16ba5f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 44/54] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 863a559ebc0997b7c381dd95994d10d9bd35f289 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 45/54] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From e3fbf28560298a7f7123e583a73e656c5fc3a2d7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 46/54] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From efce37af18f815f1a8851f73825677d21b8f76b2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 47/54] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From fc630c6a029e0e734fce2bc727c38d994ca41aa0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 48/54] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 6bf0f83ac1f231deaedd8c757636594bd2dc9c0d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 49/54] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 4b1562a30ba52f4cec1b77fbb0530873a523bd88 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 50/54] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 782958c9ba893fafdc14aa377015cf9f60e563a8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 51/54] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From b341c39095219e4fe609b9afc06524c3ef0283e5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 52/54] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 6528e87ff520fa35c7ba8c135a024dbb3c0e2056 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 53/54] lutris: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From af98077c73f9d59c3fc53ccd4988d6908a561979 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 54/54] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (41 preceding siblings ...)
  2020-05-10 22:47 ` [PR PATCH] [Updated] " mnabid
@ 2020-05-10 23:54 ` flexibeast
  2020-05-11  0:07 ` flexibeast
                   ` (44 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: flexibeast @ 2020-05-10 23:54 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 236 bytes --]

New comment by flexibeast on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626409271

Comment:
@toluschr: One should use `dbus-run-session` rather than `dbus-launch` for things like this.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (42 preceding siblings ...)
  2020-05-10 23:54 ` flexibeast
@ 2020-05-11  0:07 ` flexibeast
  2020-05-11  1:18 ` not-chicken
                   ` (43 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: flexibeast @ 2020-05-11  0:07 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 780 bytes --]

New comment by flexibeast on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626411093

Comment:
@mnabid, @not-chicken:

In my testing of setting up GNOME 3.32 in a VM, `adwaita-icon-theme` was a soft dependency in practice. That package is currently a dependency of `gnome`, which means it doesn't get pulled in when doing a minimal GNOME installation, and although `gnome-session` 'worked', it wasn't usable due to the lack of icons. Hence the [current instructions in the Handbook for setting up GNOME](https://docs.voidlinux.org/config/graphical-session/gnome.html).

It seems to me that `gnome-themes-extra` is probably the correct dep here, though whether it should be a dependency of `gdm` or `gnome-session`, i can't say.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (43 preceding siblings ...)
  2020-05-11  0:07 ` flexibeast
@ 2020-05-11  1:18 ` not-chicken
  2020-05-11  3:22 ` flexibeast
                   ` (42 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: not-chicken @ 2020-05-11  1:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 785 bytes --]

New comment by not-chicken on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626422793

Comment:

> In my testing of setting up GNOME 3.32 in a VM, `adwaita-icon-theme` was a soft dependency in practice.
 
Seems like it's still only a (sorta) soft dependency. It's only the lack of fonts that crashes the session. 
> It seems to me that `gnome-themes-extra` is probably the correct dep here, though whether it should be a dependency of `gdm` or `gnome-session`, i can't say.

Probably `gdm` looking at the other distro packages. Though considering `gdm` doesn't work without `gnome-session` we'd also need to add it as a rundep to `gdm`, which eventually leads to `gdm` becoming package that pulls in the base of GNOME desktop.



^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (44 preceding siblings ...)
  2020-05-11  1:18 ` not-chicken
@ 2020-05-11  3:22 ` flexibeast
  2020-05-11  3:32 ` not-chicken
                   ` (41 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: flexibeast @ 2020-05-11  3:22 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 646 bytes --]

New comment by flexibeast on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626449435

Comment:
> Seems like it's still only a (sorta) soft dependency. It's only the lack of fonts that crashes the session.

\*nod\* Well, i still think it should be added as a dependency (of `gdm`, from what you've said) - lack of an icon theme may not cause a crash, but GNOME is basically unusable without it.

(Submitting an issue about the icon theme problem in the Void packaging was something i had on my TODO list as a result of writing up the GNOME page in the Handbook, but i hadn't got to it yet ....)

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (45 preceding siblings ...)
  2020-05-11  3:22 ` flexibeast
@ 2020-05-11  3:32 ` not-chicken
  2020-05-11 16:53 ` not-chicken
                   ` (40 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: not-chicken @ 2020-05-11  3:32 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1192 bytes --]

New comment by not-chicken on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626451476

Comment:
I agree, `gnome-themes-extra` it is then.

Regarding `mesa-dri`, I think it makes sense to pull it via `gdm` as well, we already pull some X/wayland stuff via it.

-------- Original Message --------
On 11 May 2020, 8:52 am, Alexis wrote:

>> Seems like it's still only a (sorta) soft dependency. It's only the lack of fonts that crashes the session.
>
> *nod* Well, i still think it should be added as a dependency (of gdm, from what you've said) - lack of an icon theme may not cause a crash, but GNOME is basically unusable without it.
>
> (Submitting an issue about the icon theme problem in the Void packaging was something i had on my TODO list as a result of writing up the GNOME page in the Handbook, but i hadn't got to it yet ....)
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, [view it on GitHub](https://github.com/void-linux/void-packages/pull/21382#issuecomment-626449435), or [unsubscribe](https://github.com/notifications/unsubscribe-auth/AMBCG6EJCMREXLQPHYLWGK3RQ5VQTANCNFSM4MRZ4JOA).

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (46 preceding siblings ...)
  2020-05-11  3:32 ` not-chicken
@ 2020-05-11 16:53 ` not-chicken
  2020-05-11 17:52 ` Gottox
                   ` (39 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: not-chicken @ 2020-05-11 16:53 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 777 bytes --]

New comment by not-chicken on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626823133

Comment:
So I came across this https://wiki.gnome.org/Design/Apps. 
What's the opinion on modifying our `gnome` meta-package and it's `gnome-apps` sub-package according to it?
In my opinion, in their current state,  `gnome`  provides too less while the `gnome-apps` sub-package provides a bit too much stuff.

We could:
1.  Move the core apps to `gnome` itself and have non-core/extra apps in `gnome-apps`.
2.  Split the `gnome-apps` into `gnome-apps-core` , `gnome-apps-extra` and make `gnome-apps` a transitional package depending on both.

CC: @Gottox Could you please share your opinion on this and if possible, review this PR?


^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (47 preceding siblings ...)
  2020-05-11 16:53 ` not-chicken
@ 2020-05-11 17:52 ` Gottox
  2020-05-11 22:01 ` [PR PATCH] [Updated] " mnabid
                   ` (38 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: Gottox @ 2020-05-11 17:52 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 632 bytes --]

New comment by Gottox on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626856223

Comment:
I really like the idea of rearranging the meta packages. I followed the seperation (core vs apps) on https://ftp.gnome.org/pub/GNOME/, but this doesn't work out for an end-user, tbh. I'm quite happy with the -core package, as it's really the base minimum for gnome, but apps is really huge.

I find the idea tempting to rename `gnome` to gnome-core, create a new package `gnome` that depends on gnome-core and has a reasonable subset of gnome-apps and move the reset of gnome to gnome-apps.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (48 preceding siblings ...)
  2020-05-11 17:52 ` Gottox
@ 2020-05-11 22:01 ` mnabid
  2020-05-12  9:58 ` not-chicken
                   ` (37 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-11 22:01 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 489 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
**Waiting for [`pipewire-0.3.4`](https://github.com/void-linux/void-packages/pull/20413) and [`gjs-1.65.2`](https://github.com/void-linux/void-packages/pull/21716) to be merged.**

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 712825 bytes --]

From 652e01dfe4994686e845371cbc36382b139fcb61 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/54] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 7693053e46b..0b090dc642a 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1177,7 +1177,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 2455e69e7704d4dfb592c771d6dd826f87e53163 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/54] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..029b87ff22b 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+       rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 4e202a623a67bf718688f70f7c21fe15ab686579 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/54] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From 16b677aa4f04740996f29f6931467ee1396ae975 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/54] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From be4dffac0cdf336640d06ed2d5786de0751c71ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/54] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 8f06416ace073c238f5b73bfeac7a47a6e7c8965 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/54] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 5ac3da9760465f367ca7b7aefec3dd6e51d3404e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/54] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 60759a1812448b8d8d043ef9d74fd1432036cb55 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 08/54] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From af0e0ff0d831bbd30e933540d4fccb4c11c4079a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 09/54] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 6d13f74dc3bc689babe5e524a0a4c98d561ca6c9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 10/54] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 47f0946ba5723f1268c6b15d98710f70d5b0334d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 11/54] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From e5152bc3cd26c8f458b9701a8d7d9f48629b7fde Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 12/54] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 006ffa8972796e9e1fea32160b23bf7233258af7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 13/54] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 0c115b789ec9e36075073a99cc2cbc9aabcb3483 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 14/54] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 8d323fb909c22b23ea639d736295e51e53b3dfa4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 15/54] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From df5db89e00b3d5be3449abc7515716c867040c81 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 16/54] gnome-settings-daemon: update to 3.36.1.

---
 srcpkgs/gnome-settings-daemon/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From ded083cd1e130a6c2c9844b2dce98556390997e8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 17/54] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From d7cbc38fbb3ea399cafcd61e211753a383f96c46 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 18/54] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From f2656348ebe7f05f29899f621afcde1d0e3b88e5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 19/54] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 9bd2a64c94fc4513d2b7367bc2822d34ba477ad4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 20/54] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From e308c621bacb80d2768fecd64dda0a03acbd853d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 21/54] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From fa0f96ba8c1e8365a04c0017a28f36c307ba07bc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 22/54] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From bd3568664b11d111486df14f145e20c5a7733d33 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 23/54] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..a13c5600d79 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,10 +1,10 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
 makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
  libXevie-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From cc35776e62b4dfbd48eee313624f22dd111f9ba9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 24/54] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 912e500a5d4376088744313f84105bf0c5e552dd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 25/54] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From ab8deaf71e3dcc926a14bb29dac3989db3a75807 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 26/54] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From e1fcacf90d37eafb08595302e8e8f51b2e179c66 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 27/54] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From e403f470c14dedb528e923a71bd375fb71e20ce5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 09:14:10 +0600
Subject: [PATCH 28/54] polari: update to 3.36.2.

---
 srcpkgs/polari/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/polari/template b/srcpkgs/polari/template
index 5d1c71b0f91..68a0eb1eaae 100644
--- a/srcpkgs/polari/template
+++ b/srcpkgs/polari/template
@@ -1,6 +1,6 @@
 # Template file for 'polari'
 pkgname=polari
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="pkg-config itstool gobject-introspection gettext"
@@ -13,5 +13,5 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Polari"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c4c2aaa66b202eec3ab7dbfe08b8bb730e40cafc77cb0a9eae190bf1c8c1b5e6
+checksum=acfcdb1653bf2e47bd5ab891e38a0002c2f93c160397119c3a0b5c3ec57d208a
 nocross="telepathy-idle:   File '../tools/glib-ginterface-gen.py', line 791 SyntaxError: invalid syntax"

From fb18e66e7bc8ed57fcdc82fc6b4017fc169f1d9a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 29/54] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 9001788af3547f9ecd96845edfb9909e10cbfc8a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 30/54] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From ecb713d1733e5ae65530fd2b6763bb899f5d39ec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:48:46 +0600
Subject: [PATCH 31/54] simple-scan: update to 3.36.2.1.

---
 srcpkgs/simple-scan/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/simple-scan/template b/srcpkgs/simple-scan/template
index d0fc97903e5..5e07d63f08d 100644
--- a/srcpkgs/simple-scan/template
+++ b/srcpkgs/simple-scan/template
@@ -1,7 +1,6 @@
 # Template file for 'simple-scan'
 pkgname=simple-scan
-_gnome_version=3.36
-version=3.36.1
+version=3.36.2.1
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,5 +10,5 @@ short_desc="GTK Simple scanning utility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/simple-scan"
-distfiles="${GNOME_SITE}/${pkgname}/${_gnome_version}/${pkgname}-${version}.tar.xz"
-checksum=7427f0902253e01383941243f56ef987609943c537f92dd1043a53eb5eaaf92e
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*.*}/${pkgname}-${version}.tar.xz"
+checksum=bb8ce5750cd0405e14e4ac8b09f4a587c2fa3a418614ad425a6694c981bb012b

From 1af92c34f59bc1a3f1f02622baee5f203972bef7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 32/54] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From ac62bc29ba30de1159d86280277bcb860d76ac8d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 33/54] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 93a7f6b8f9460aa9adafd9aac7a56cf20d18e96c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 34/54] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 0b090dc642a..a19bf34e172 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 50c67e0392b73485e1d203e48f9ce51e7b8f29d8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 35/54] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index a19bf34e172..f4bbe309563 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From fe40d41e506510a3e5fe406637790901dec93052 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 36/54] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From e58ccb1afdbaa2a35acfc7ff8bdcbe293a5fd191 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 37/54] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 26 +++++++++++------
 2 files changed, 45 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..a29ff01649e 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,28 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 3f2d39fbe0d08767cb680b897e55d1309277ccfe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 38/54] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 99e5f0321aa54fbe4bda2b5671276dcde8e21545 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 39/54] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 28 +++++++++----------
 3 files changed, 23 insertions(+), 34 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index f4bbe309563..fe9e6a0b547 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2934,15 +2934,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..7c14829af9e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
-configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true -Dprofiler=false
+ -Dintrospection=true -Dxwayland_initfd=disabled -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 16fb19d5f8bfacc7d3e56f02a2562347c4180dd8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 40/54] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From dc123aeedc156337ad40db9f0e7c1355f2ffea9b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 41/54] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 2ff03292a09b07cdd1231e739c5700d0beabe829 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 42/54] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 5e8e90c2bba541b73d8175e15dc7d3d15621eef0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 43/54] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From c8b2ab92b1ecb5ab7ddfb36b18be987c50f1153e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 44/54] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From b007cfcd68b9705f74672a1e7d939101be5bc8b8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 45/54] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 2e5eb0f6cdd412fa9ec9aca92c84d9f6f8832e30 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 46/54] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 4dfc7d6d49343d778772fb9780975605bf1b2da6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 47/54] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 7e3a0e5bb09bba9aa5f7f19e5403db2bd6e32141 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 48/54] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 67dea8e879ffb8c97ef0f48083fc060841dbd1f3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 49/54] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 59782a7ac45329cde82727473ac36b295ebd12a1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 50/54] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From d968df5aa22eacd49d8137a807cb6fb603bdae4e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 51/54] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 7822a737c66adfbf93b952c2ee90b13ba0855076 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 52/54] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 8bf5400e69951c98aefedaa2b21a40c649275c6a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 53/54] lutris: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From 48e4939c74335641a6b6d486e6e5567dd7bfc74e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 54/54] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (49 preceding siblings ...)
  2020-05-11 22:01 ` [PR PATCH] [Updated] " mnabid
@ 2020-05-12  9:58 ` not-chicken
  2020-05-14 10:28 ` [PR PATCH] [Updated] " mnabid
                   ` (36 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: not-chicken @ 2020-05-12  9:58 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 962 bytes --]

New comment by not-chicken on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-627240142

Comment:
Initial attempt of rearrangement [here](https://github.com/not-chicken/void-packages/commits/gnome336), I hope I got your suggestion right @Gottox 

- renamed `gnome` to `gnome-core`,  a few dependencies were added/removed. Only bare essential applications are included: terminal, file manager and text editor. It's worth discussing whether documentation should be included here or in `gnome`.

- Made `gnome` have the core applications, mentioned here https://ftp.gnome.org/pub/GNOME/core/3.36
  Though a couple were intentionally not included, `gnome boxes` and  `epiphany` as they increase storage requirement significantly.

- All other apps were moved to  `gnome-apps` subpkg.

( PS: Version bumps were done via sed for the time being coz I am lazy. So everything got bumped, even what's not needed :D )

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (50 preceding siblings ...)
  2020-05-12  9:58 ` not-chicken
@ 2020-05-14 10:28 ` mnabid
  2020-05-20  2:22 ` mnabid
                   ` (35 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-14 10:28 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 489 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
**Waiting for [`pipewire-0.3.4`](https://github.com/void-linux/void-packages/pull/20413) and [`gjs-1.65.2`](https://github.com/void-linux/void-packages/pull/21716) to be merged.**

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 711713 bytes --]

From c74f2dc4dcf4d4bd0edf210d8d36690be64a93c8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/53] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index d7ef5f18ee9..29bfa387c94 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1177,7 +1177,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From ed520fca924cc32ff57eaeb8b31749b9330b13d9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/53] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..029b87ff22b 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+       rm -rf ${DESTDIR}/usr/lib/systemd
+}

From d8edc0ce77cdc5b5fd3c718415b5c14cfa5fbe3a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/53] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From 5a79d3f7d3862b6c11de88401fa082a1d3f6e541 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/53] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 1d1125703116885523f5e54e8388a82089431949 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/53] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 8173b61e85aa79ed27cc056ec36f3df812a270c4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/53] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 9086742527d40b1d78872d67c9d8a65eb93b22b0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/53] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 06fbb06bf4f8bcfd2fce13442e9dd4f3e42e8441 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 08/53] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From b75fd73eed45a843dddce21ee406169e6a0c20ec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 09/53] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 2daf37bdee5dbad0a87d89126c0ee69e9f0e6a84 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 10/53] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 011db900de8dd5ed7870602f4f68811c831461ca Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 11/53] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From 3701aca92be753f738c9f38f52f5194c9347290d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 12/53] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From d6b1c22c9def9abdd42f3d50edc667c554f115be Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 13/53] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From a4c83fee83d95f5f4e6afefee612ef343fe87990 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 14/53] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 39d10dec0fc620465db6a44b74f29f86723c62b0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 15/53] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From c559d7ba823e90f3f20a94ae0772975517ba1aab Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 16/53] gnome-settings-daemon: update to 3.36.1.

---
 srcpkgs/gnome-settings-daemon/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 2669bbaecb2496fb233dbda9f946609fbac8682d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 17/53] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 7a8c68f114d287ef51ab6705088eb5d12d09cfbe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 18/53] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From 5abce3043a197b047af6c5682a8f25baf6c58b83 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 19/53] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 0ec681ee8f914626f0e4cb214924e6ff154a20a3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 20/53] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 68573feb99b6ad915d245dc773eafb3f74a4fb61 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 21/53] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From b68e13286bdf628f3dbf54399cd482b8f3e275dd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 22/53] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 471199749e6d78fb7ce524c58cec66cbc6872194 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 23/53] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..a13c5600d79 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,10 +1,10 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
 makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
  libXevie-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 7e27c0b921305eb1b0d0f2a4f5cc5578c1a0141f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 24/53] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From e6cff14793c3491e9dceb0ad00c30b80b763b449 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 25/53] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From 552cfbd77916d0b082d2a3033ed63c904ef6e7cb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 26/53] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 693f2e3482b602a28db77c6d43a689283edca052 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 27/53] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 6c876edc739b77ac8258bfcb901389a5472bd953 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 28/53] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 5f21f308596f034b406f096eaf089215273d0810 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 29/53] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From ee80d58cb4aa100257d460b1bc07609f93d43892 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:48:46 +0600
Subject: [PATCH 30/53] simple-scan: update to 3.36.2.1.

---
 srcpkgs/simple-scan/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/simple-scan/template b/srcpkgs/simple-scan/template
index d0fc97903e5..5e07d63f08d 100644
--- a/srcpkgs/simple-scan/template
+++ b/srcpkgs/simple-scan/template
@@ -1,7 +1,6 @@
 # Template file for 'simple-scan'
 pkgname=simple-scan
-_gnome_version=3.36
-version=3.36.1
+version=3.36.2.1
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,5 +10,5 @@ short_desc="GTK Simple scanning utility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/simple-scan"
-distfiles="${GNOME_SITE}/${pkgname}/${_gnome_version}/${pkgname}-${version}.tar.xz"
-checksum=7427f0902253e01383941243f56ef987609943c537f92dd1043a53eb5eaaf92e
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*.*}/${pkgname}-${version}.tar.xz"
+checksum=bb8ce5750cd0405e14e4ac8b09f4a587c2fa3a418614ad425a6694c981bb012b

From f3998af560e363354d4be02182f7cb68d6f81b78 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 31/53] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From f30305181235a1b2067ab80b4904aa9e9b2693b6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 32/53] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 764651a4301456495c8e22eb64722d11f877ab54 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 33/53] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 29bfa387c94..23ccd7495ec 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -565,7 +565,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 4424c842a4e2295c4024cd1deb74084294708825 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 34/53] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 23ccd7495ec..2aa4ce45e45 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,6 +567,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 5c05b5091f11346b0352243791b3cd8285af13c2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 35/53] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 211523f6dcc9426debd7369407d0b48e40e270b1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 36/53] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 26 +++++++++++------
 2 files changed, 45 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..a29ff01649e 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,28 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From d065d7fdda9a6005096b1bab9e6e34cde96ace50 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 37/53] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 2af5acd05ad3dde37f6bfcfc27981ed2071a5a37 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 38/53] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 28 +++++++++----------
 3 files changed, 23 insertions(+), 34 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 2aa4ce45e45..ba784a59b85 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2934,15 +2934,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..7c14829af9e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
-configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true -Dprofiler=false
+ -Dintrospection=true -Dxwayland_initfd=disabled -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 700e1c94f57946ee0e664c3fece4d340b2bbc93f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 39/53] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From d0dc77ae16767e496559272b2a31afe2b1e31181 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 40/53] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From b743c18a5fb6d663c32897cd28dc555f30729e48 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 41/53] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From e29ec4bf49f976df647039dc34eb7171c31e82ce Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 42/53] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 74d335cb7c022a93cc252d2dfbf63e72cacc0ac2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 43/53] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From f80872be27b755df0a7939e3ac353aa38f1a4464 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 44/53] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 375c5426c6cb630f9452474f987117400767bbc9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 45/53] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 686ce834f23698a182c3dc807e5dfb7e0a17b38e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 46/53] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 2a8fa730fae36622b738a8f1c7d814d95132bcbc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 47/53] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From a16fe9ad6009650412f051352b3b47e47e8a3ada Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 48/53] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 784184a25603108769a5542b521beb2b5bfdeb84 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 49/53] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From a1ff47d29ddd3d5c3107dde0ec3f506f18576bbe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 50/53] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 9df9656fa03951bfa722d8b1167e6a2a65623b7c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 51/53] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From e06a733e5684fdb114bbd6d5b500deea29ce2478 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 52/53] lutris: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From 8f053c710aac51fa59d49673383434f78ff28f36 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 53/53] evince: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..173071a9cad 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (51 preceding siblings ...)
  2020-05-14 10:28 ` [PR PATCH] [Updated] " mnabid
@ 2020-05-20  2:22 ` mnabid
  2020-05-20 19:40 ` [PR PATCH] [Updated] " mnabid
                   ` (34 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-20  2:22 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 188 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-620445530

Comment:
@sgn Combined all open GNOME PRs I pushed here. 

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (52 preceding siblings ...)
  2020-05-20  2:22 ` mnabid
@ 2020-05-20 19:40 ` mnabid
  2020-05-21 12:09 ` mnabid
                   ` (33 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-20 19:40 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1965 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for **[`pipewire-0.3.5`](https://github.com/void-linux/void-packages/pull/20413)** to be merged.

<details>
<summary><b>List of updates : </b><i>(click to expand)</i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> (revbump)
 * evolution -> 3.36.2
 * evolution-data-server -> 3.36.2
 * evolution-ews -> 3.36.2
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-2048 -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.2
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.2
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.2
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.2
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.2
 * nautilus -> 3.36.2
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * simple-scan -> 3.36.2.1
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built in `x86_64`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 712046 bytes --]

From db9ecc4f780efc9260515d6f05de660bda7a02e3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/53] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 3abd2bcda5e..2662f4677e8 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1177,7 +1177,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 5a4883ca4771323d45ca053ff1bbb8f02cd35299 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/53] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..029b87ff22b 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+       rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 995935d85134313a287f209be50063202bec3d2a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/53] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From db159a33ec901b887fc99265ee30a61cb477449c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/53] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From c2366752c6803518db64397c6bd8501d3dd91b9d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/53] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From abbc6c6449d8e56967b5549275ec23af7065c472 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/53] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From f6fd84e50777adbbb285e67025facf15819ed990 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/53] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 4f13cecc71c8286498e835bab4e860b0f2022ab1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 08/53] evince: update to 3.36.1.

---
 srcpkgs/evince/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..f5dfddab36a 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,6 +1,6 @@
 # Template file for 'evince'
 pkgname=evince
-version=3.36.0
+version=3.36.1
 revision=1
 build_helper="gir"
 build_style=gnu-configure
@@ -19,7 +19,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evince"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=851d9b5234d479ab4c8f7c5cbaceb0e91ad79ccba1a7b733cde72dacc928fba8
+checksum=8cb8bfd358a02d8edba51114548e98154321e0895bf379a5bb336a458d594bd7
 
 build_options="gir"
 build_options_default="gir"

From c0c5a37aaba7070ada3039ac78e738c31d09a252 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 09/53] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From b4cf7054ec2565198a9fbb88c53985487628a94d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 10/53] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 8aac5866ab3ca16c259a7c99d4c7d4f7c86f3ecc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 11/53] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 308a820e1d0d95a723ac70980e051da21b4ae680 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 12/53] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From d373a88b209cb0532e080ecc0f691e0594ea7179 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 13/53] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 6b9973d5aec9f94d2344acca52e7764ee9cd20ba Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 14/53] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 3b85d53a5c860f3bebcbfbbcb396e80cc180aae4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 15/53] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From e7cd66cc9d38ce0d7ae7a0ca156d914c948e0d5c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 16/53] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 427b2d406f9021e204cbe558fcc3944dc5614269 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 17/53] gnome-settings-daemon: update to 3.36.1.

---
 srcpkgs/gnome-settings-daemon/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From ec329f3ec14d3f2ad37e894f9fe96c977a07cbd0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 18/53] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 6629df3e9f0e569e618d3c0b77d7df6278e82307 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 19/53] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From 12a9db874756a49f00aee3fccc5c9452a744bd1f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 20/53] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From ef7e1f8f03a01f0cccb830c018a75475f8d5f8f1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 21/53] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 49b578b5a95003e77aa320dff656203fc118fc0e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 22/53] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From c8bfeb42ada16d7df90e23c9c338070c03865a88 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 23/53] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 3fbff77f69b285fbc33f12141af00672bbeb4a1e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 24/53] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..a13c5600d79 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,10 +1,10 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
 makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
  libXevie-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 85bb7390f3ffea37c9fca4efd089f488b8cb1293 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 25/53] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 31c1acccec66bc41008dae15fdc28c837e160244 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 26/53] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From f3d094c35c74297b3d379b7f47177935db4c2555 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 27/53] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From a097f0eee9090d2fae3850fe64260b8f6b162941 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 28/53] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From a2e0b87153976492796fba5b226a579e6355a081 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 29/53] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 7bcab02cd18c94c485275941577eee01c3aade2f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 30/53] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From cc50926ccede52c5eb692b92aaf013ecdaa9310e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:48:46 +0600
Subject: [PATCH 31/53] simple-scan: update to 3.36.2.1.

---
 srcpkgs/simple-scan/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/simple-scan/template b/srcpkgs/simple-scan/template
index d0fc97903e5..5e07d63f08d 100644
--- a/srcpkgs/simple-scan/template
+++ b/srcpkgs/simple-scan/template
@@ -1,7 +1,6 @@
 # Template file for 'simple-scan'
 pkgname=simple-scan
-_gnome_version=3.36
-version=3.36.1
+version=3.36.2.1
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,5 +10,5 @@ short_desc="GTK Simple scanning utility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/simple-scan"
-distfiles="${GNOME_SITE}/${pkgname}/${_gnome_version}/${pkgname}-${version}.tar.xz"
-checksum=7427f0902253e01383941243f56ef987609943c537f92dd1043a53eb5eaaf92e
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*.*}/${pkgname}-${version}.tar.xz"
+checksum=bb8ce5750cd0405e14e4ac8b09f4a587c2fa3a418614ad425a6694c981bb012b

From 05f5c7d03d72952275862ce059c21615598adbc5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 32/53] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From b61e9425db46eef08318aab583b390a5fd5143f8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 33/53] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From e90586894e687e660107f3c4d51240aaf6fc27dc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 34/53] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 2662f4677e8..4e3436772e7 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,7 +567,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 147659507c2931ec11dbc699e9880fdd17828f2c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 35/53] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 4e3436772e7..a0cd70b004b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -569,6 +569,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 4bd3e8198f81d8f9031d00aaba37338840a6aaec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 36/53] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 5650e5a2238f3f6978355fd32286258c98b14e74 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 37/53] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 26 +++++++++++------
 2 files changed, 45 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..a29ff01649e 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,28 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 31cb5bacb368554f26d26686d7dfaebe5c0e8e18 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 38/53] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From fe4b9dae957e3ea0f3056e41350a1225cd64ab9a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 39/53] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 28 +++++++++----------
 3 files changed, 23 insertions(+), 34 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index a0cd70b004b..d0102b638a3 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2944,15 +2944,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..7c14829af9e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
-configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true -Dprofiler=false
+ -Dintrospection=true -Dxwayland_initfd=disabled -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 15719b77c082e441a9b8dbf0e142114dda9f6956 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 40/53] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From 373ee8ff2f9d77e856d86118cbc064928252a200 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 41/53] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 89cb71f1943ea15bffc64e9740ef7a37922c7158 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 42/53] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 3c15ae064b44d826f311ba5ae1b1227b759b4812 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 43/53] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From adb2af873e31d5690115876ce41d30f750edb68a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 44/53] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 645348d2baea953bb72f4b24c166ac2fc3cc80ba Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 45/53] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From ae60522d22b03e765334d58fbea7644fa9a94bb6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 46/53] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From f72f4d7a0e9dffefd8f5bd05c5b59c8d9c2ff7fe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 47/53] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 344b482af97f2c60e5905c998aba7d3b4f99e6fa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 48/53] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 75c5ea11bb0e254b2f48f92c51958465dd69aeac Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 49/53] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From b2c2ce18f12238281f59a2bd8b19d6032c413f9d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 50/53] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 07b3d60bf8d9a0933be72b3de0e8fa31e371dbf2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 51/53] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 274fdd5b7cbc676bdb6d80b1d1223fc54db2ff41 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 52/53] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 87f6ab41a9a1057c8036076c5ec479c49e972e60 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 53/53] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (53 preceding siblings ...)
  2020-05-20 19:40 ` [PR PATCH] [Updated] " mnabid
@ 2020-05-21 12:09 ` mnabid
  2020-05-21 12:14 ` mnabid
                   ` (32 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-21 12:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1962 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for **[`pipewire-0.3.5`](https://github.com/void-linux/void-packages/pull/20413)** to be merged.

<details>
<summary><b>List of updates : </b><i>(click to expand)</i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.1
 * evolution -> 3.36.2
 * evolution-data-server -> 3.36.2
 * evolution-ews -> 3.36.2
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-2048 -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.2
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.2
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.2
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.2
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.2
 * nautilus -> 3.36.2
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * simple-scan -> 3.36.2.1
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built in `x86_64`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 718538 bytes --]

From c71ad37be5e9d5716a946b3412bde4998364a532 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/53] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 3abd2bcda5e..2662f4677e8 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1177,7 +1177,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 504ec904437b810185cb70e76ed5344df4981ab2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/53] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..029b87ff22b 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+       rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 35baea68bb15439186fc89e2b960d48af109a4cc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/53] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From 57d0a7de5056e959b6c59133748a80c286c97351 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/53] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 97444799e21b65002525a6aced7f2a753df09866 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/53] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 1b6a7ca65a7ff87eef4ea7e9d7ee70c973efde64 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/53] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From fc8f016fb024c7a1d59acfb8f5d3d2d13b6bea3b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/53] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 12484ebcd2de3187ebb4cdf0c410eff183b35c33 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 08/53] evince: update to 3.36.1.

---
 srcpkgs/evince/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..f5dfddab36a 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,6 +1,6 @@
 # Template file for 'evince'
 pkgname=evince
-version=3.36.0
+version=3.36.1
 revision=1
 build_helper="gir"
 build_style=gnu-configure
@@ -19,7 +19,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evince"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=851d9b5234d479ab4c8f7c5cbaceb0e91ad79ccba1a7b733cde72dacc928fba8
+checksum=8cb8bfd358a02d8edba51114548e98154321e0895bf379a5bb336a458d594bd7
 
 build_options="gir"
 build_options_default="gir"

From fbb5c38aa9c5933e24a9b0c4b655da1fd52dd229 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 09/53] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 8c56e45283bf2c58cd6662e54c677e4c381ad508 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 10/53] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 300601c74c3e13fbc1ebcb7a6ab24a277801fbf3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 11/53] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From a497da83adfa4d0d98f385e49e4911ca8513cae8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 12/53] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From ed313f211da71f0d6c3cbbca18697ec8b8a55447 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 13/53] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 349edfd3e65c17e81e8f526ff91e359e24bb2530 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 14/53] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 207a5218bfc28d516df2d6ca8aee311198e3d3fd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 15/53] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 3bc9fb22fc74a03656036e60dc26942079d4b864 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 16/53] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 69b9ede41150ea12a2a492e3fc188242f539a040 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 17/53] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 94c87a13c76f6a78aa439f7524d513a03a71c42d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 18/53] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 45ebdd1565b6af5960597e00c456ff1f0a9209bf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 19/53] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From cedd4c8aff146d83bcfc4447e09d2f1f4109442d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 20/53] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 93c0f204e0f8526efdc7ab58c7b9db2396abb4eb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 21/53] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 38e7e132d9d52ace5d3cb14819c6383485e8ef65 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 22/53] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From a7e68db592f96d2d0a918c19220a3bbe31961f4d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 23/53] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 1592f0e2a5b6247ea91522f0245442702362bb16 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 24/53] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..a13c5600d79 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,10 +1,10 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
 makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
  libXevie-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 55d4aa24e22e1774ed2c14ed839b6bcdbb616961 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 25/53] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 80da5f2bd9969124218104250856fe08bd2a73ee Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 26/53] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From a0170dab314ae03e4e16d93e13d236ef4e490cfa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 27/53] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 4e2c6d88ce2642c56ae86253e13fd8dc9bcdcb57 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 28/53] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From fb4d6677516180067510d54c991c3d73d08d2d4a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 29/53] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From a1c159826d5644b22048fd7b52b2760bf6927fde Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 30/53] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 1d122eaad9adde52599aa57da8ece3c9fbb14156 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:48:46 +0600
Subject: [PATCH 31/53] simple-scan: update to 3.36.2.1.

---
 srcpkgs/simple-scan/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/simple-scan/template b/srcpkgs/simple-scan/template
index d0fc97903e5..5e07d63f08d 100644
--- a/srcpkgs/simple-scan/template
+++ b/srcpkgs/simple-scan/template
@@ -1,7 +1,6 @@
 # Template file for 'simple-scan'
 pkgname=simple-scan
-_gnome_version=3.36
-version=3.36.1
+version=3.36.2.1
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,5 +10,5 @@ short_desc="GTK Simple scanning utility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/simple-scan"
-distfiles="${GNOME_SITE}/${pkgname}/${_gnome_version}/${pkgname}-${version}.tar.xz"
-checksum=7427f0902253e01383941243f56ef987609943c537f92dd1043a53eb5eaaf92e
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*.*}/${pkgname}-${version}.tar.xz"
+checksum=bb8ce5750cd0405e14e4ac8b09f4a587c2fa3a418614ad425a6694c981bb012b

From 303bf05df2d63cf1901e8fb99d2e859280feb031 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 32/53] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From e89fcd185593bc64dbf57ffce6904811cc590fb2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 33/53] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 77944fcdbfda97e9a42227c2a049b4a64c6b1e64 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 34/53] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 2662f4677e8..4e3436772e7 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,7 +567,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 47e852ee972cd74212db76cae3ceece3b678d3d5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 35/53] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 4e3436772e7..a0cd70b004b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -569,6 +569,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 9922a2cdff52d278d373b6bfc6653e5a72e36d83 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 36/53] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From d5e1b400a38f90f6ed8b3da0c0461dfedc1679ce Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 37/53] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 26 +++++++++++------
 2 files changed, 45 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..2a00dceff70
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.18.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..a29ff01649e 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,28 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From a6b9ed96830921d72788839e01cd9ba358b7490f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 38/53] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 491927f3302fae782d6b916e1f9fa83fe459d517 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 39/53] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 28 +++++++++----------
 3 files changed, 23 insertions(+), 34 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index a0cd70b004b..d0102b638a3 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2944,15 +2944,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..7c14829af9e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
-configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true -Dprofiler=false
+ -Dintrospection=true -Dxwayland_initfd=disabled -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From b24c6225fda20ad818594213f656fe6527db5b1c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 40/53] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From a40a2e7f73e2db40c0e117c45dc1c36152e3b7d6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 41/53] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 322111f018b74ab53795d1624ff7ef95ec1d7ce7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 42/53] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 3a168774faeb6bfe131d0c79149fe499d3cc8c7f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 43/53] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 3740ee63caac1ca093750a7a9316432d80a7a1d5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 44/53] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 7b2428653b64c448a38303250422263710883b36 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 45/53] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 3d089ef0deaefc36e752a4ecbc5c2480b467a47f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 46/53] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From b819371c426d0e0c002e660e4ae628d8878e5cbd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 47/53] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 1af7768a14d5d20b3bb95f395a8cf5c19d04b74a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 48/53] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 4e6bc3cf54c04333b76580a22d5eeb321ef1c2ab Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 49/53] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 8733ea79b1265f0deee122652167c1aec43fde4e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 50/53] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 274c346ade885407a7a7811579f42de7ee7fe775 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 51/53] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 3c22c3fcd9dc5b7f55f2d7c4cbff5b6adde8ee39 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 52/53] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 4d3d45f0c882bb687690b89d1db4f6001fc59dad Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 53/53] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (54 preceding siblings ...)
  2020-05-21 12:09 ` mnabid
@ 2020-05-21 12:14 ` mnabid
  2020-05-21 12:18 ` mnabid
                   ` (31 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-21 12:14 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 893 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626338068

Comment:
Okay...so I'm running **GNOME 3.36** in Void for over two days now. So far it's doing good, despite some issues here and there. 

~~I can't change brightness neither from my keyboard nor from the brightness slider. (manually calling `gsd-backlight-helper` works, and `xbacklight` too. )~~
Thanks to [this patch](https://git.alpinelinux.org/aports/tree/community/gnome-settings-daemon/dont-use-logind-for-brightness-changing.patch) from Alpine Linux, this issue is solved. 

And many of my themes are broken, but that's another story :wink: 

![GNOME 3.36](https://user-images.githubusercontent.com/62117272/81501559-e6ce9900-92fa-11ea-90a2-ace1d331e963.png)

P.S. : The Void logo patch is borrowed from Manjaro and **I've not pushed it here**. 

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (55 preceding siblings ...)
  2020-05-21 12:14 ` mnabid
@ 2020-05-21 12:18 ` mnabid
  2020-05-21 12:52 ` [PR PATCH] [Updated] " mnabid
                   ` (30 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-21 12:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 923 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626338068

Comment:
Okay...so I'm running **GNOME 3.36** in Void for over two days now. So far it's doing good, despite some issues here and there. 

~~I can't change brightness neither from my keyboard nor from the brightness slider. (manually calling `gsd-backlight-helper` works, and `xbacklight` too. )~~
Thanks to [this patch](https://git.alpinelinux.org/aports/tree/community/gnome-settings-daemon/dont-use-logind-for-brightness-changing.patch) from Alpine Linux, this issue is solved. (Also see elogind/elogind#158)

And many of my themes are broken, but that's another story :wink: 

![GNOME 3.36](https://user-images.githubusercontent.com/62117272/81501559-e6ce9900-92fa-11ea-90a2-ace1d331e963.png)

P.S. : The Void logo patch is borrowed from Manjaro and **I've not pushed it here**. 

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (56 preceding siblings ...)
  2020-05-21 12:18 ` mnabid
@ 2020-05-21 12:52 ` mnabid
  2020-05-21 13:25 ` mnabid
                   ` (29 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-21 12:52 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1962 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for **[`pipewire-0.3.5`](https://github.com/void-linux/void-packages/pull/20413)** to be merged.

<details>
<summary><b>List of updates : </b><i>(click to expand)</i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.1
 * evolution -> 3.36.2
 * evolution-data-server -> 3.36.2
 * evolution-ews -> 3.36.2
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-2048 -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.2
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.2
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.2
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.2
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.2
 * nautilus -> 3.36.2
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * simple-scan -> 3.36.2.1
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built in `x86_64`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 718538 bytes --]

From d3b56462485f7d535fc3a4a8b932dc3473cf9fc0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/53] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 3abd2bcda5e..2662f4677e8 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1177,7 +1177,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 4cd999c98973f0fd311d9c777ec3b28929c86b9d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/53] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..029b87ff22b 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+       rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 518835801385d6ef44baacd8450445d54e9b6383 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/53] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From 0274333716be7abec15ea251ae6c492f8b59d17f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/53] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 86460e3d2d87fe7540d1beb1da450a5897bb66ca Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/53] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 6eeaf33a18038d2db9afd35329a1df7e25be970e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/53] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 15c9eaf4b1f99528f4d42461d73ce1a2cf057f4b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/53] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From da458ad777b408dd88c47c07735caf82266b8ad9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 08/53] evince: update to 3.36.1.

---
 srcpkgs/evince/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..f5dfddab36a 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,6 +1,6 @@
 # Template file for 'evince'
 pkgname=evince
-version=3.36.0
+version=3.36.1
 revision=1
 build_helper="gir"
 build_style=gnu-configure
@@ -19,7 +19,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evince"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=851d9b5234d479ab4c8f7c5cbaceb0e91ad79ccba1a7b733cde72dacc928fba8
+checksum=8cb8bfd358a02d8edba51114548e98154321e0895bf379a5bb336a458d594bd7
 
 build_options="gir"
 build_options_default="gir"

From a86c38a587c2a384aeeacd6ede80e075bfb4737c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 09/53] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 75af0df6370b38b03211c7e866be938b2ec3faf5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 10/53] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 6db6446f2941c8bd17e49d52f17253b78fc2d51c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 11/53] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 64223ba38a96375ce83f9650018a388a816b43be Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 12/53] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From 2acec67dcdb928141b20162c797d5d6a3c10c4d7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 13/53] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From f6e6fc8cbc68d3e567ce13ac03779884087211fe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 14/53] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 0fc9ba9311c47aa8040c52cbeee4a55aec9cb238 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 15/53] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From bbca2d84ba487361940fde4eb645a60b911af477 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 16/53] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 39384f823eb0fc0ddfc06a5fc4fa1e7cef297bb4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 17/53] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 0985768a134b461a00219b18dc295d6a780d6105 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 18/53] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 2326a02146520de302fcc699c6f1190409e1b3bc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 19/53] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From 91659ad328cf4e1fcaee72ce86d2aa3b9a68de08 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 20/53] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 9d47e9a98c3322e33f18e6ecde304b2caa50278a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 21/53] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 1626f82fab70669da59e9b95ae2a29e48efae692 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 22/53] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 57ad4a635d0a01f8d3d8cd72d14a4fd0d447f85c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 23/53] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 3accc36259d6c9b49d47324871f3f2afe9e2dbec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 24/53] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..a13c5600d79 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,10 +1,10 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
 makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
  libXevie-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From c7efbb3359a49e49984e93a7db74ac0e5c1f11e2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 25/53] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 66d1d55dcbb6b094df4a895f0d07d22a4784d571 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 26/53] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From 68dcf7398db29cf33fbec6d27a736dd041449b06 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 27/53] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From e342a425bf20c2b13502ca168f6ba97f9d24dac0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 28/53] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 638019e8f567c05d9b24ac7cd62722c75c24d15d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 29/53] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 0ddfe206234d9a75ff49ede2983370df4bb26489 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 30/53] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From d234895af9384c404ccd1a34a1e7c660f3b9eba2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:48:46 +0600
Subject: [PATCH 31/53] simple-scan: update to 3.36.2.1.

---
 srcpkgs/simple-scan/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/simple-scan/template b/srcpkgs/simple-scan/template
index d0fc97903e5..5e07d63f08d 100644
--- a/srcpkgs/simple-scan/template
+++ b/srcpkgs/simple-scan/template
@@ -1,7 +1,6 @@
 # Template file for 'simple-scan'
 pkgname=simple-scan
-_gnome_version=3.36
-version=3.36.1
+version=3.36.2.1
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,5 +10,5 @@ short_desc="GTK Simple scanning utility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/simple-scan"
-distfiles="${GNOME_SITE}/${pkgname}/${_gnome_version}/${pkgname}-${version}.tar.xz"
-checksum=7427f0902253e01383941243f56ef987609943c537f92dd1043a53eb5eaaf92e
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*.*}/${pkgname}-${version}.tar.xz"
+checksum=bb8ce5750cd0405e14e4ac8b09f4a587c2fa3a418614ad425a6694c981bb012b

From d59f03e7904e428cfe11c00c771eccc17a60bfce Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 32/53] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 490fa483050733dfdf7d0024ad067e248a63952f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 33/53] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From d0abfe830bf50478ef9ba656c8b41e6e2abd764d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 34/53] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 2662f4677e8..4e3436772e7 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,7 +567,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From d1d0471e964e9545f66e4fbdeb5212bc2d506406 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 35/53] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 4e3436772e7..a0cd70b004b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -569,6 +569,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 5b28212f20fb984087014a87954223aa62d5cdfc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 36/53] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From c645d7c2be80599bf50840bd4ecc91757923cd12 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 37/53] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 26 +++++++++++------
 2 files changed, 45 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..a29ff01649e 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,28 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 8fb7ac1ad65bac682ede7434a1d495065b7ecfa8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 38/53] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 6de185cecc21d2c10fec65111f24bd6afd0a9f2f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 39/53] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 28 +++++++++----------
 3 files changed, 23 insertions(+), 34 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index a0cd70b004b..d0102b638a3 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2944,15 +2944,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..7c14829af9e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
-configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true -Dprofiler=false
+ -Dintrospection=true -Dxwayland_initfd=disabled -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From fe0522a12eab988594fd05744123888cd0890a47 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 40/53] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From fe148d3b4127df49e57dc0a53d621e7718b5a169 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 41/53] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 420cb7f33d43ea959f3c869af1fa200ecde7f8b3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 42/53] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 3805b8ed2ba4cd52d6ba19ed386a7750a1dee6bc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 43/53] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 3d500d49c417fb404a52c9f15cb51e5a9852c6eb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 44/53] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From c6fd197dbc23f8ddc77bf16903440a630be23dbd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 45/53] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 4bd9a1636930f4427f868083f3c9ba87cf964643 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 46/53] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 7e99ce8d494c6658bcd8d06c7d6a28efea21ae63 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 47/53] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 4f1a0f41e8dc6a852f5f0f1683c4873e7b21c856 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 48/53] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 76a9cea96d50474536e6a28eed2045f1154e09ed Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 49/53] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 0b74f5129587852c1e51b856f37597fee01c930c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 50/53] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..200c691f51d 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
@@ -13,3 +13,4 @@ license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 8ac5039d1cb5e74bdf4ae0de51d51d4c474dfc42 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 51/53] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From ed6f22131d825a24fd5099821f8eab66a140f5b0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 52/53] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From fa8cb0efea7cafe9bf954df233cdd558810660e5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 53/53] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (57 preceding siblings ...)
  2020-05-21 12:52 ` [PR PATCH] [Updated] " mnabid
@ 2020-05-21 13:25 ` mnabid
  2020-05-25  5:37 ` [PR PATCH] [Updated] " mnabid
                   ` (28 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-21 13:25 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 915 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-626338068

Comment:
Okay...so I'm running **GNOME 3.36** in Void for over two days now. So far it's doing good, despite some issues here and there. 

~~I can't change brightness neither from my keyboard nor from the brightness slider. (manually calling `gsd-backlight-helper` works, and `xbacklight` too. )~~
Thanks to [this patch](https://git.alpinelinux.org/aports/tree/community/gnome-settings-daemon/dont-use-logind-for-brightness-changing.patch) from Alpine Linux, it is solved. (Also see elogind/elogind#158)

And many of my themes are broken, but that's another story :wink: 

![GNOME 3.36](https://user-images.githubusercontent.com/62117272/81501559-e6ce9900-92fa-11ea-90a2-ace1d331e963.png)

P.S. : The Void logo patch is borrowed from Manjaro and **I've not pushed it here**. 

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (58 preceding siblings ...)
  2020-05-21 13:25 ` mnabid
@ 2020-05-25  5:37 ` mnabid
  2020-05-26  2:24 ` mnabid
                   ` (27 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-25  5:37 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1934 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for **[`pipewire-0.3.5`](https://github.com/void-linux/void-packages/pull/20413)** to be merged.

<details>
<summary><b>List of updates : </b><i>(click to expand)</i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.1
 * evolution -> 3.36.2
 * evolution-data-server -> 3.36.2
 * evolution-ews -> 3.36.2
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-2048 -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.2
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.2
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.2
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.2
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.2
 * nautilus -> 3.36.2
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built in `x86_64`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 717633 bytes --]

From be01ea0a04fb21407f358eb63f2fd4db5e21d443 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/52] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index f18df7266ff..385f1e1fa07 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1177,7 +1177,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From e3467bc210a13ad7862b1f72ab05fa1efcdbfa43 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/52] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From c493b67922082266f06893b046e7a719cbfe5410 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/52] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From 039ac4f7add0bb2ce0b2950213bfd2de5c910cd3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/52] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From fc2087bfba55c07bfb13d8bb8e4a04194e10db6a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/52] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 9a80d6258ce0841733c6fa51a5e0baf37256965d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/52] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 5daf6b567fa2f690e45c0ccb425da387ad9ce0cc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/52] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 6f56cebf06527a04d18b6c50c6d58cc239d9447d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 08/52] evince: update to 3.36.1.

---
 srcpkgs/evince/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..f5dfddab36a 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,6 +1,6 @@
 # Template file for 'evince'
 pkgname=evince
-version=3.36.0
+version=3.36.1
 revision=1
 build_helper="gir"
 build_style=gnu-configure
@@ -19,7 +19,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evince"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=851d9b5234d479ab4c8f7c5cbaceb0e91ad79ccba1a7b733cde72dacc928fba8
+checksum=8cb8bfd358a02d8edba51114548e98154321e0895bf379a5bb336a458d594bd7
 
 build_options="gir"
 build_options_default="gir"

From 70b820fb63d50cbc463465a26b54ac07a0df88ac Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 09/52] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 179bbf3e243710aae602ff8bf47407cb5ef36dad Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 10/52] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 633ef77a223a41bae827e9856885711a979a0042 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 11/52] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..71d15c8e3f7 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
 hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
@@ -13,4 +13,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b
+
+if [ "$CROSS_BUILD" ]; then
+	hostmakedepends+=" folks-devel"
+fi

From 30732034fb68fa31dd8adbfda2a663eaf7fa6413 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 12/52] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From 187bb3aa0316d046242787fd9884d18607ea775b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 13/52] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From c88c5ba53e663a295dbaacc73d925507e06c6a18 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 14/52] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From b3375dc69e6391459d8121f4b4dbccbd342f3d7c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 15/52] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 907cd3495dfb3d884da6f3eb1bcef8e056445b6a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 16/52] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 7719aa9b633cd0b62ce041e5dbc98ca6350dc06e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 17/52] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From f0b9f1b90bcf7255442bf67cb98a3f5718209b79 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 18/52] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From dc5ef174f3d560fdd0bd1fc3608145287b1cca9e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 19/52] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From da344d280aa591a2bd94af8e13a88927e363f17a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 20/52] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From f08b69d0ee9bfaca3b33753aaf40142f570caf62 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 21/52] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From b85ef85805e3a6aea704260eeb88ac8bdd526dc1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 22/52] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 1137d4b1e59a7434ad342a1375009750bdc0f0b2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 23/52] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 88edae1d6462591417165dbb9d2d5c4b5042ea52 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 24/52] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 5c752658632615880311b0f9115e802a047c7121 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 25/52] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 2d43ba7fdfbf43055e6d3d36598b543e0eabdd30 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 26/52] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From 6b58ef30bc2444ab79257e5d181977e6d22bea76 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 27/52] folks: update to 0.14.0.

---
 srcpkgs/folks/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..4bf7b55a080 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,13 +1,13 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 gobject-introspection
  evolution-data-server-devel"
-makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
+makedepends="readline-devel telepathy-glib-devel zeitgeist-devel python3-dbusmock
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 5b2a600f39c312311e9698f172e9d9fe67b49dd6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 28/52] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From e96d1b6ac1043eb7d28e1bb1f223548f7041512a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 29/52] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 377f3b81a898ea1ecd5a04780cf0890aa762ff44 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 30/52] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 33303e7ea372a8368b95b3828771d2ec326e8cd0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 31/52] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From d807ecc2cea954585dac7c52787e0bfd28f2ed97 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 32/52] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 768f73a662c60bb27463295d8615fd25016dd301 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 33/52] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 385f1e1fa07..013a0f7cfbf 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,7 +567,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From c7e884489b6b6d55254e2bd7755175136c62b75b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 34/52] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 013a0f7cfbf..3a067a92118 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -569,6 +569,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 61820278581d07a5a82ac0c270896e0d868ea8f2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 35/52] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From c350c9b1728e4ff2f8732680f6e783b6c2998c01 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 36/52] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 26 +++++++++++------
 2 files changed, 45 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..a29ff01649e 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,28 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From a0a35af23713ed48e769c52f619b8684bc1fc07b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 37/52] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From ed03a15482244cd63c98744c54ee8eca327ead8c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 38/52] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 28 +++++++++----------
 3 files changed, 23 insertions(+), 34 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 3a067a92118..063df92e34e 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2944,15 +2944,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..7c14829af9e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
-configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true -Dprofiler=false
+ -Dintrospection=true -Dxwayland_initfd=disabled -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 28ebe6fd1ce42394bc3828ddd6d029bac9af7f18 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 39/52] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..f59c46a561f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
  asciidoc perl glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From 16e1bd7de7c707fb54737bd95203479d49c8e1b0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 40/52] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 93c7f9979d6396818b90863c15db2fdaf3fe9077 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 41/52] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From c037d51b5a71a135e4011aa5608b550c833c3a43 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 42/52] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 24e1100d56b8d44ad71bf388589e12a56d611507 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 43/52] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From dc5bc101f8063a211f32abb7057109dee964b051 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 44/52] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 62a7920c485407dead5b251a7b873afff1db399d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 45/52] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From a69502e2179d495d6d3bf50e84a00e771dbf6520 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 46/52] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From c0b39d3612e5b4124670542debf8a1dfc347c8e7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 47/52] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 6618938398a64bb36d07ea82ba64f11c23a642ca Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 48/52] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From a2e2d39b68c3bf05870929eceeb5b19f8fd0dbb3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 49/52] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From bfdafce8c991e4530ca83bd40ba0ef48a1aedc31 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 50/52] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 75fb1d9273939fbf149bea6f662596ccce0bf182 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 51/52] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From b1e27b7a2788750fee1f616447eac1db8b1c7e52 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 52/52] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (59 preceding siblings ...)
  2020-05-25  5:37 ` [PR PATCH] [Updated] " mnabid
@ 2020-05-26  2:24 ` mnabid
  2020-05-29 12:13 ` mnabid
                   ` (26 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-26  2:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1934 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for **[`pipewire-0.3.5`](https://github.com/void-linux/void-packages/pull/20413)** to be merged.

<details>
<summary><b>List of updates : </b><i>(click to expand)</i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.1
 * evolution -> 3.36.2
 * evolution-data-server -> 3.36.2
 * evolution-ews -> 3.36.2
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-2048 -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.2
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.2
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.2
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.2
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.2
 * nautilus -> 3.36.2
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built in `x86_64`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 718583 bytes --]

From 046a12eae612cd2032ecb4ffb482fa7d3bf6d1aa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/52] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 09fd2f33a73..b5b74abbfa8 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1177,7 +1177,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From b4f3ae7a61ce90ac1a90ced163c110d2a2d2a73e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/52] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 6aa0b8fa259e5dcbc12570cea189317ca7080f9e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/52] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From 1fe46868768b8effafa43cebfcdae76549c6d3b3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/52] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 32369cc4ce86789d5333675374251b157a8db1e5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/52] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 9d291e48c6692968c2f5b5b72389f1ea1fe43b66 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/52] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From f003de91c2e71e855fe9171dfa581bd2f52ca1b4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/52] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From df176935dbacc4dfd2274cc101da4536601004d7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 08/52] evince: update to 3.36.1.

---
 srcpkgs/evince/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..f5dfddab36a 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,6 +1,6 @@
 # Template file for 'evince'
 pkgname=evince
-version=3.36.0
+version=3.36.1
 revision=1
 build_helper="gir"
 build_style=gnu-configure
@@ -19,7 +19,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evince"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=851d9b5234d479ab4c8f7c5cbaceb0e91ad79ccba1a7b733cde72dacc928fba8
+checksum=8cb8bfd358a02d8edba51114548e98154321e0895bf379a5bb336a458d594bd7
 
 build_options="gir"
 build_options_default="gir"

From e7735d1ca486de5c4a197b481312a77f1cbc4079 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 09/52] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 9e80eed0fddcab64903d8dd02eceadf06618ad64 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 10/52] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 0af7d8b54c2478c9490bcef664a249b4611529dc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 11/52] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From fc6191dfc7f5fab53b490e733578cdf4f69df27a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 12/52] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From 52cef77c74d500aee6028bd2f7e757c7bc9320e2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 13/52] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 11fadff2677561ae78d852b1d362fc9bbe816ca2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 14/52] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 72e74881436ab48c5c0e7a2a9991a2e7de1b4944 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 15/52] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From a1aded0ae1dadfa8776de7009a26c334130373f2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 16/52] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From cdf5cd6b1bfbbdfb2d2bf547e3fbe5e6cefe2289 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 17/52] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 2e339a0f2474998c8f8dd6ae65a386716da1cbdb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 18/52] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 719872557372b6613e78c55da41a392a477747fb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 19/52] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From 655df2decfcccf425447a82b06b6310e14b2d986 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 20/52] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 885a115f49b..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 build_helper=gir
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From ee6796d0732b83b195c118c60d4ea45f54793530 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 21/52] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From ffbecb409af9403e5ff374f8dff176b6bea0821a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 22/52] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 8b94b9617895c15b67d7e8d6ddf1af47e1798258 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 23/52] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From fa7a3102c642a88e67e74f0629aaaf4dcbe6d2a2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 24/52] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 06af79de3ec73f957cc7d4c3c983173eb3d8f7dd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 25/52] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From caa39d6134fae2752780a03870c9b5e246d56a1b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 26/52] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From c541cd055d6221daeabfdc28150f38d9f792c46b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 27/52] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index b5b74abbfa8..9a8a5e749b8 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -835,9 +835,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 90ef7536377731555e860a92dd6a70b28bfc6436 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 28/52] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 524ecc5fe68e8853d5f3520a86c6ed3d78231514 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 29/52] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From f4538230f8435b0706a39d4e449b730f7789df34 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 30/52] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 8702bcf5f33..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
+version=2.3.4
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From b5cdb961ab9c8bb022d2eae088c8fe6f2c122218 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 31/52] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 900ae6b033015ef8d076270fe2e384d2d529e8c6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 32/52] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 53091c5895e3abfa574250d24c4343541897bd44 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 33/52] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 9a8a5e749b8..79f20380ccb 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -567,7 +567,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 4e6908e5d29e44c3620382fd869ae2840ffbf09e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 34/52] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 79f20380ccb..5b314dd314c 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -569,6 +569,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 23ba313f3bbc55514b37ae414229d9397a5813a8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 35/52] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 8d35ccb22b6dc5a727f7c29e0c303344cbb374c6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 36/52] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 26 +++++++++++------
 2 files changed, 45 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..895dfc43878 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,28 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="gettext-devel pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From e037a02fcfa0f878fff0ad899f3a6ebeeb8cd694 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 37/52] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From eaae3e316c2d97fa12bce8c3421e1e2aa9e2dd69 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 38/52] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 28 +++++++++----------
 3 files changed, 23 insertions(+), 34 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 5b314dd314c..0e80a3e01ad 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -2945,15 +2945,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..7c14829af9e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
-configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true -Dprofiler=false
+ -Dintrospection=true -Dxwayland_initfd=disabled -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From cc9e9d9f75f0d51dd1a5277281e9b27a31cfe2f1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 39/52] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..b67ac653d90 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From 1e97097e33c4ba03413e3def263e0bc3eb60a438 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 40/52] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From baebbc40ec3747a6bcf85452940b0502c3188265 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 41/52] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 994361a524cbbdaf1bbeeed64e5ad1b210f23773 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 42/52] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 3b200049a8f0eab9184963c0aef114644b522f02 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 43/52] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From c821c36232c67e5c6fb3af2c386a3a605c15d569 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 44/52] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 6c6d5dcf5907664eb552c1a040fdc541bb06557f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 45/52] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From e374a76d5e0f61d8081375285ce7d624e288c42e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 46/52] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From a363cf308c254298ba8cf7a0854d8d0918218080 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 47/52] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From d724ba5977e13ba9b8728c5f1dfbd59b3211af0f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 48/52] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From f55c6e85e640c7f51c43e380b590acc7d5c33bf4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 49/52] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From af28d705b80cd2610756f2c4c8b57f8a978f4e66 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 50/52] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 0fce0e60813e5e0ac59034bf0b72b4679811de59 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 51/52] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 4c3f6133b2739acce922dc843d56ece604b4ea93 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 52/52] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index f801844c77a..396229ae627 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (60 preceding siblings ...)
  2020-05-26  2:24 ` mnabid
@ 2020-05-29 12:13 ` mnabid
  2020-05-29 13:30 ` mnabid
                   ` (25 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-29 12:13 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1934 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for **[`pipewire-0.3.5`](https://github.com/void-linux/void-packages/pull/20413)** to be merged.

<details>
<summary><b>List of updates : </b><i>(click to expand)</i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.1
 * evolution -> 3.36.2
 * evolution-data-server -> 3.36.2
 * evolution-ews -> 3.36.2
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-2048 -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.2
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.2
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.2
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.2
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.2
 * nautilus -> 3.36.2
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built in `x86_64`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 718645 bytes --]

From c00bd7092a4bba0b6a95e78504c9102074d05d60 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/52] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index f5c5bed6b93..15363468a2b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 3ce9f0e7a3215d1089b07e400254b474350a3c81 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/52] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From e59ab8a2cda36ce9ac34652123788dd743d81c82 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/52] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From 53395c911f2060b8ea144cdd54856c910f0c6ab9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/52] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 358b647350d016ebc90e3b1ff102b5aae181f4a5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/52] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 56903f5f45481151dd551a045aef1c5c61cf56cc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/52] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 3ba541d81b2c2e6ce336ccd7c27d89d6ef76a530 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/52] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 80e4fefc9d8fb1c0292419412a8118868e4f1529 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 08/52] evince: update to 3.36.1.

---
 srcpkgs/evince/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..f5dfddab36a 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,6 +1,6 @@
 # Template file for 'evince'
 pkgname=evince
-version=3.36.0
+version=3.36.1
 revision=1
 build_helper="gir"
 build_style=gnu-configure
@@ -19,7 +19,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evince"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=851d9b5234d479ab4c8f7c5cbaceb0e91ad79ccba1a7b733cde72dacc928fba8
+checksum=8cb8bfd358a02d8edba51114548e98154321e0895bf379a5bb336a458d594bd7
 
 build_options="gir"
 build_options_default="gir"

From f6bb60cf5dea48fa5345c7b419d642e8d515aecb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 09/52] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 1da77af2a3d90c1936548e02d55f805278ddde4d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 10/52] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From dd4a01e97115eb08d37ee42daec735e5e97e178e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 11/52] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From e849d574528f1834f9e66cc932333bdfd71379ec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 12/52] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From de271a337b346f9d95dc201829143c1e76c60768 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 13/52] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 36b37bb9d68d7ceb2166c699445d506f934ce28a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 14/52] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 484724d142db1819c9cb5dbf9044efba85b47183 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 15/52] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 28d01de00be8da54ea890365d6ee6ca47354ad05 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 16/52] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 6a621d9ecc38eb1b05068b636c0b12a8e9cec10f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 17/52] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From f940308da261a6784bf23d26f1f90f03263b2b9b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 18/52] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 75d44c7e595d764284aa3ecea9fe8351e70ef8cb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 19/52] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From 9857826c40ff49bf3d3b0390ff7112cff0fe2ae0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 20/52] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 4ae820be068..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,7 +1,7 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
-revision=2
+version=3.36.2
+revision=1
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 7f488d54d6ac66431015e33f2407386137a26c4b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 21/52] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 7620c309b1f13273f9afc0f71dfac2ce8b2ff905 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 22/52] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From eb9190e4d4d483078fa588b28ce50bce8987a6ce Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 23/52] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 88f00079955f6116eb23d1d61536fa3f99e3e742 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 24/52] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From d27f8f9cfbf082a87ac9b5e27fa7ae7d626516f3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 25/52] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From b09558243cd6757324dbf1ff56b92725e8da7e1c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 26/52] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From 59a964bcdf704f2d4d5601f254827dea65a7642c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 27/52] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 15363468a2b..3dc0cc1a7b0 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -834,9 +834,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 054de843c7331d7eeb23c0302a7995361d2bfce6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 28/52] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From b1eafad1d5999960d9fcbe2825a6a8acf754a7fc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 29/52] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 012839b9150a698081e6d1ae86ba9b82f9d9de12 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 30/52] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 37074cb348d..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
-revision=2
+version=2.3.4
+revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From fa67f2558aabc5c121fc9eb43b2019074773a6ed Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 31/52] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 470f2955e410945f5cb507ccda252aa9002bbfdc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 32/52] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From f9dda92505f3b0bfd34648827f1ae82967635fdf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 33/52] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 3dc0cc1a7b0..7f6561cebca 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -566,7 +566,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From a89b35a3e26fb86019b3fb29932cb20394f706e2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 34/52] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 7f6561cebca..4be5bf00624 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -568,6 +568,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 9d003fdfc07de66dd2645f55344a0d06c97c243f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 35/52] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 18ffad47632f985b801d9cb08ad25e7051a118b0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 36/52] gnome-flashback: update to 3.36.3.

---
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 26 +++++++++++------
 2 files changed, 45 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..895dfc43878 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,28 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="gettext-devel pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 44c1246682e6271af2dc8c08d1d6014291508b78 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 37/52] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 2d61374366bb04c94593f90b8ccc15cf299ef04d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 38/52] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 28 +++++++++----------
 3 files changed, 23 insertions(+), 34 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 4be5bf00624..539cc81ce3f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3012,15 +3012,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..7c14829af9e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
-configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true -Dprofiler=false
+ -Dintrospection=true -Dxwayland_initfd=disabled -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 13565e358fcff206d41a10402a6a19670b7a15a0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 39/52] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..b67ac653d90 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From 1ba60f60605c0700b5a9b9d1c89aded8c24f1cdb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 40/52] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 7a856381255e452596c9b549b14813284c6d6ec1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 41/52] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From fddadf229ac246bbcdd28c64f5b516a08a3d8c09 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 42/52] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From d1a7251146f3f794c1fb1041b221471ed98b3bfb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 43/52] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From d2385bf2c189c87a8159092e730b6702fe7b53c1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 44/52] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From f6fe5ce9ff6a395c5430ddcf0262e616ce0e95b7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 45/52] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From c7d082e0caffd55033bfd1503e2ca981d3bec9e2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 46/52] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 83eb5e3dfcde6418d3f25501cfca005bbce4e416 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 47/52] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 91eaab9bfda254a0b55a2080b0988fbbf2ad7fd7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 48/52] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From e401a2b6f5a1318d8ba6b617b79fd4b3b1a23554 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 49/52] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 62cd2deb2d9a1079c25b65390e1574e560a8ef3b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 50/52] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 26aa6f06e8b11dd3b4dbc9568cc3c7b08479c5e5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 51/52] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 9a1f612f526c2cc2131d8f5ce2c4a9808f4aeed9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 52/52] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index c3c47392ff6..7ee74cc7990 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (61 preceding siblings ...)
  2020-05-29 12:13 ` mnabid
@ 2020-05-29 13:30 ` mnabid
  2020-05-29 18:29 ` mnabid
                   ` (24 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-29 13:30 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1934 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for **[`pipewire-0.3.5`](https://github.com/void-linux/void-packages/pull/20413)** to be merged.

<details>
<summary><b>List of updates : </b><i>(click to expand)</i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.1
 * evolution -> 3.36.2
 * evolution-data-server -> 3.36.2
 * evolution-ews -> 3.36.2
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-2048 -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.2
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.2
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.2
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.2
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.2
 * nautilus -> 3.36.2
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built in `x86_64`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 719328 bytes --]

From 1327792cbdac21c46e06b500f7572c0a736c92ac Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/52] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index f5c5bed6b93..15363468a2b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1176,7 +1176,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 4539c79d574f68cf29d8efa5b402470d08183873 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/52] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 98aaa412b937ef50b30c66fffa106788d2a41bbe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/52] nautilus: update to 3.36.2.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..1010873f4f0 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=26673c9599502452cf299358729be8b554066a9b670d89b24e245160d15776fa
 
 build_options="gir"
 build_options_default="gir"

From aff121cfa7b8600ac792a10e011bbadd9b74518b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/52] gnome-2048: update to 3.36.2.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..989b6ff125b 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=29da7499c89ee74f9834e8de2b85633239a66e5c53d956a8e95a987bdb4b3321

From 2419946ff4766049a6bfdf639f58769dd838ce52 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/52] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From a9bc4973d12a5159141fcf3f3a493dc2a4ae8070 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/52] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 57b5388d2d7e2a186722d58972005e63a72ce5ad Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/52] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 583bf83d4cfc14077b0df8a91b6157fd96e4d5d9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 08/52] evince: update to 3.36.1.

---
 srcpkgs/evince/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..f5dfddab36a 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,6 +1,6 @@
 # Template file for 'evince'
 pkgname=evince
-version=3.36.0
+version=3.36.1
 revision=1
 build_helper="gir"
 build_style=gnu-configure
@@ -19,7 +19,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evince"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=851d9b5234d479ab4c8f7c5cbaceb0e91ad79ccba1a7b733cde72dacc928fba8
+checksum=8cb8bfd358a02d8edba51114548e98154321e0895bf379a5bb336a458d594bd7
 
 build_options="gir"
 build_options_default="gir"

From a5168395d6cc71b9a88fd0df9cef0abcbbec076e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 09/52] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From bc2ed3318dba3f0ee5f56f42fafc0de011e4f954 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 10/52] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From fc863ce6f267d44393628a025c5b336704175be4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 11/52] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From 4c769aae8d5ac39c5a6d9e0ae6dac13038f00d98 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 12/52] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From 08fc86b024128060a5804fa4f58e86d8191779f9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 13/52] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From c1257c2ae55393ed08b320b6e95f734db0a7b3ec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 14/52] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From f359c9cf40bf46be7c0f535a21a874d4259ac103 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 15/52] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From c5594aa0d0d661018e47d8c055971d8e9c832eab Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 16/52] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 11301556a5261170492c08e3bd39a08b63bedc43 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 17/52] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 19abe965b2a6cff06c63ec2cf52da11d735eac96 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 18/52] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From e75effa9088468c4f59f028a78151fa3f59fc617 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 19/52] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From 0493ffb5a0f7fa4a9e8e2385ee855b329b1e0ebd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 20/52] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 4ae820be068..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,7 +1,7 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
-revision=2
+version=3.36.2
+revision=1
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 40f217df61edf417a62c480563db1611a28dc53d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 21/52] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 04f477c844d1cecb7f44621bb83d8d3d6d8f795e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 22/52] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 3495b65a64f662100acb93dceb5f27722d98001d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 23/52] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From e9294be426eb66a20c293cf76e8dc3d25f3f8633 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 24/52] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From c1818734093125eee9bbcb389d003c926e8064ed Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 25/52] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 7ba2af93a2a6cf83f34a3a7c305825a0f7655071 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 26/52] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From 578a53045e6dc6da498f03ce054d70ad29ac1e5f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 27/52] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 15363468a2b..3dc0cc1a7b0 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -834,9 +834,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From a373100383e848bfdce6328db645055e5ddbabe3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 28/52] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From d2665b43c4f28c987b3c24d7fa331e45c6601786 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 29/52] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 921df56e059d7c42fb4abd4fa8ef55fe40fd7378 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 30/52] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 37074cb348d..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
-revision=2
+version=2.3.4
+revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 103f5d5ca6a290d3e5bbf2699c4799be1758f964 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 31/52] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 132fdcd585a42eb3dcbf38bff285012378243249 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 32/52] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From bc3a923256bf85f9f770cc31c7283ee2d401f598 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 33/52] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 3dc0cc1a7b0..7f6561cebca 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -566,7 +566,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 5ede7ac5ffa36252de3f2369a367ae49543af340 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 34/52] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 7f6561cebca..4be5bf00624 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -568,6 +568,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 39e43bcfa37f226162a78927953a3f2464771f73 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 35/52] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 9a525d66f904bbd8ddfa4c388d18439a92a3eefc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 36/52] gnome-flashback: update to 3.36.3.

Added PAM config to enable screen locking.
---
 .../gnome-flashback/files/gnome-flashback.pam |  6 ++++
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 27 ++++++++++++------
 3 files changed, 52 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/files/gnome-flashback.pam
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/files/gnome-flashback.pam b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
new file mode 100644
index 00000000000..ebbb51dd0e8
--- /dev/null
+++ b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth       include	system-auth
+auth       optional     pam_gnome_keyring.so
+account    include	system-auth
+password   include	system-auth
+session    include	system-auth
diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..08566df5fd4 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,29 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="gettext-devel pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vinstall ${FILESDIR}/gnome-flashback.pam 644 /etc/pam.d gnome-flashback
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 8ad56315f3481ffdf014bb0268de35b8a1ede044 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 37/52] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 218191a0743c724af6d536fdb86df5a28c25c57b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 38/52] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 28 +++++++++----------
 3 files changed, 23 insertions(+), 34 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 4be5bf00624..539cc81ce3f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3012,15 +3012,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.1_1
+libmutter-clutter-6.so mutter-3.36.1_1
+libmutter-clutter-6.so.0 mutter-3.36.1_1
+libmutter-cogl-path-6.so mutter-3.36.1_1
+libmutter-cogl-path-6.so.0 mutter-3.36.1_1
+libmutter-cogl-6.so mutter-3.36.1_1
+libmutter-cogl-6.so.0 mutter-3.36.1_1
+libmutter-cogl-pango-6.so mutter-3.36.1_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.1_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..7c14829af9e 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,34 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
-configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true -Dprofiler=false
+ -Dintrospection=true -Dxwayland_initfd=disabled -Dxwayland_path=/usr/bin/Xwayland"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 1668deef0afe06c08d44216f1741433a28b4cc41 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 39/52] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..b67ac653d90 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From 2e87bd35e8c3ee830b11c7c4ca0bf95598c005bc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 40/52] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From f55829da35a9b23f016a0e0ad70993578d6f6751 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 41/52] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 138f3dec70c8f19521decd8eb13cedbb62ac9fff Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 42/52] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 487da705dbedc613173b83c0d643c44806ed27b4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 43/52] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From ccc0f3e2c1ce8e53cddb0114e12366225ab4f9fe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 44/52] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From e1e80f3dbed951ca0e01f5c42825455670f2f322 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 45/52] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 8ba4d7d26e54df74d7fd90c478144d9631227173 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 46/52] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From cdb456ef6b5cc4b67583bed697432a46089b0578 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 47/52] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From a8045ce49509fd29eead518e4fb46f2f5c166495 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 48/52] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 33df7582392ad4a0e2c24ecd870fd0d4181081c2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 49/52] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From e63969e32e60feb196bc20e25c2b2bb8ca1d5818 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 50/52] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From fc6fda20e7b157e8193f029724eab6b2bea4226c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 51/52] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From c38931e846b7c816706c26a88c795916597e0851 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 52/52] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index c3c47392ff6..7ee74cc7990 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (62 preceding siblings ...)
  2020-05-29 13:30 ` mnabid
@ 2020-05-29 18:29 ` mnabid
  2020-05-30  4:52 ` not-chicken
                   ` (23 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-29 18:29 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 878 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-636121772

Comment:
This PR is almost merge-ready, except it needs `pipewire-0.3` to be merged and `mutter` depends on it. 

I was looking around Ubuntu's repositories and neither [Ubuntu](https://packages.ubuntu.com/groovy/pipewire) nor [Debian Sid](https://packages.debian.org/sid/net/pipewire) has managed to package `pipewire-0.3.x` yet. They built **mutter** with **`-Dremote_desktop=false`** (See Ubuntu's [changelog](http://changelogs.ubuntu.com/changelogs/pool/main/m/mutter/mutter_3.36.2-1ubuntu1/changelog)). 

I think instead of waiting for #20413 to get merged, we should give the time it needs to be worked on, and push GNOME 3.36 updates. (it's June already and 3.38 is knocking at the door ! )

@not-chicken What do you think about it ? 

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (63 preceding siblings ...)
  2020-05-29 18:29 ` mnabid
@ 2020-05-30  4:52 ` not-chicken
  2020-05-30 19:22 ` [PR PATCH] [Updated] " mnabid
                   ` (22 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: not-chicken @ 2020-05-30  4:52 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 259 bytes --]

New comment by not-chicken on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-636276229

Comment:
I think pipewire's PR is ready with the latest push, it just needs a final review from a member before merge. 🚀

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (64 preceding siblings ...)
  2020-05-30  4:52 ` not-chicken
@ 2020-05-30 19:22 ` mnabid
  2020-05-31  2:56 ` mnabid
                   ` (21 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-30 19:22 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1934 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for **[`pipewire-0.3.5`](https://github.com/void-linux/void-packages/pull/20413)** to be merged.

<details>
<summary><b>List of updates : </b><i>(click to expand)</i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.1
 * evolution -> 3.36.2
 * evolution-data-server -> 3.36.2
 * evolution-ews -> 3.36.2
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-2048 -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.2
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.2
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.2
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.2
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.2
 * nautilus -> 3.36.2
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built in `x86_64`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 719262 bytes --]

From a72e363990004283232b4f5420706296ccb289e3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/52] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 3f0f0052b6f..9e9dfb691a9 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1178,7 +1178,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From ff73a4b8486f79b0a32a92d908b1bdc7e7286668 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/52] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From ab0776ffe9ceb2e9ab1341cd726095df7deb13bb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/52] nautilus: update to 3.36.3.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..94cb10492ca 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=b6cafc7ab1e70a64383de391b6097fcccbf36b208f8502d8c46423224fd30ef8
 
 build_options="gir"
 build_options_default="gir"

From 90e9f91f5c74bf86db810d76da36f88c013c9e65 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:26:04 +0600
Subject: [PATCH 04/52] gnome-2048: update to 3.36.3.

---
 srcpkgs/gnome-2048/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-2048/template b/srcpkgs/gnome-2048/template
index b59ccf6de46..e44f6807e24 100644
--- a/srcpkgs/gnome-2048/template
+++ b/srcpkgs/gnome-2048/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-2048'
 pkgname=gnome-2048
-version=3.36.0
+version=3.36.3
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config vala"
@@ -11,4 +11,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/2048"
 distfiles="${GNOME_SITE}/gnome-2048/${version%.*}/gnome-2048-${version}.tar.xz"
-checksum=1b790f145d0bd67a5339c16a70674807344ed11831e8c0245ed31956b4b38281
+checksum=10d4b03b43fb6917e3a4e7e3d949dea4c6784fd0662b3df9183c9e7ac15e3770

From 083228a15f6e406ba115cfde095d0e54c4930188 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 05/52] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 181f12fa15345b068f4fe2dca57a3c280789f2c3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 06/52] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 4d9df8a77e17433751d04e4e92236feb219e0935 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 07/52] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 496f6c50bee0734a7b8b349cb349d8bf1a88fe6c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 08/52] evince: update to 3.36.1.

---
 srcpkgs/evince/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..f5dfddab36a 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,6 +1,6 @@
 # Template file for 'evince'
 pkgname=evince
-version=3.36.0
+version=3.36.1
 revision=1
 build_helper="gir"
 build_style=gnu-configure
@@ -19,7 +19,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evince"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=851d9b5234d479ab4c8f7c5cbaceb0e91ad79ccba1a7b733cde72dacc928fba8
+checksum=8cb8bfd358a02d8edba51114548e98154321e0895bf379a5bb336a458d594bd7
 
 build_options="gir"
 build_options_default="gir"

From 1e7f2c28e0a5d441eb1c104c0de75f552347f7ef Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 09/52] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From ed9c31837d52223c35ff1804634915e9ab25c5b6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 10/52] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 969c235115e8c2b828d804710aa469e932bdde3e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 11/52] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From 945557120a6f78576f6f96f7a8f02dade1dbab86 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 12/52] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From 6a81e8ee4ed276652a7cf55c740f3ef3bf7a9b1f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 13/52] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 5a79ebd9e79def4ae7ab5247c058e3f3523dbfee Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 14/52] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 59574e81007c10572effd7b3a38c9d75bdc7b9ad Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 15/52] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 0c85fdc8dd352d7de5ec6081de3b87bb668b3762 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 16/52] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From f2bf3b3ab4fc77c2ab03f99b44b7fa9249029543 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 17/52] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 0954a409e36c461ad0221b3ec993c4e5b6ee9d2c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 18/52] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 6e18468a52eeea9aa6a0b4a9a3935cb0e3d53e64 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 19/52] gnome-initial-setup: update to 3.36.2.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..73ef96b1993 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=4f8be41aea100c56dbf8f0fe1e2354d2d1ac05cf1c79a01cc975c6aa89145756

From 637b0713cee9fdfb4e01f0fcd7d61df5ac6a3dbf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 20/52] evolution-data-server: update to 3.36.2.

---
 srcpkgs/evolution-data-server/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 4ae820be068..dec72e7c424 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,7 +1,7 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
-revision=2
+version=3.36.2
+revision=1
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=98e274cfec16cee6a4b3b9c7897f6e1136d00e4f31a0d66214925abbac76e97b
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 7f86252a8f6b951a23929491031ad77628d0b8a0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 21/52] evolution: update to 3.36.2.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..c9c3afb7f6f 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=c50948c1a3ddb39b72acd93de77f94787cdc1bef330b967bbb8b6c723343318a
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 02ffb73a81885351d08d01a6b25f568320fbc575 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 22/52] evolution-ews: update to 3.36.2.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..a171f4c4a08 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=2e42e4890487f8c7f9d776a4444df6efd5299ca003a30002eb5f022091dc359d

From 2db6d1550b7750364ed47c7d7f6527ac5a807561 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 23/52] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 9d2878e43b5f102c11e92c5de1853c1defd2d2f0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 24/52] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From cc54c247ffc097d72fb7a51da9ac8ed83beb940c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 25/52] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 1aeaae06b377f7bd45f7bc8f666162cfee68a59e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 26/52] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From 1da1a216d7f8c3f9dc5bb5a8da3cc8a67b6ae73d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 27/52] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 9e9dfb691a9..9cda844824d 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -836,9 +836,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 34831b07acfbb7451799a0ab16f5aa9ef97d73c4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 28/52] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 2a4ae76ebd0f938bb7e800c5d95310c88c128121 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 29/52] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 06e452d89cfc723cd5627212a5711131410130da Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 30/52] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 37074cb348d..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
-revision=2
+version=2.3.4
+revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From ac215173a61703c520102433ca778c82628f06aa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 31/52] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From dcbfa13379089e144b55e6a6324531348bc5ad3a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 32/52] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 82a08bc1717a50bf6179ad29223d9526db49306b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 33/52] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 9cda844824d..dd66f817f20 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -568,7 +568,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From c2c9343403a881c9ad360fc9731caa831060e015 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 34/52] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index dd66f817f20..48c2abbf06f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -570,6 +570,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From d57a800d82b7cc66339a70e0ef94cc5242109702 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 35/52] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From c3774ede5fb8ef2809c84bb5678d61b9204af086 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 36/52] gnome-flashback: update to 3.36.3.

Added PAM config to enable screen locking.
---
 .../gnome-flashback/files/gnome-flashback.pam |  6 ++++
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 27 ++++++++++++------
 3 files changed, 52 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/files/gnome-flashback.pam
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/files/gnome-flashback.pam b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
new file mode 100644
index 00000000000..ebbb51dd0e8
--- /dev/null
+++ b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth       include	system-auth
+auth       optional     pam_gnome_keyring.so
+account    include	system-auth
+password   include	system-auth
+session    include	system-auth
diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..08566df5fd4 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,29 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="gettext-devel pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vinstall ${FILESDIR}/gnome-flashback.pam 644 /etc/pam.d gnome-flashback
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 1af69e413e3935b8ccefef118632a0a88d90ef52 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 37/52] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From d272c4843d44224c044addea77a04e1abb137d2f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 38/52] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++-------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 27 ++++++++++---------
 3 files changed, 23 insertions(+), 33 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 48c2abbf06f..5d44ec1f08a 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3014,15 +3014,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.2_1
+libmutter-clutter-6.so mutter-3.36.2_1
+libmutter-clutter-6.so.0 mutter-3.36.2_1
+libmutter-cogl-path-6.so mutter-3.36.2_1
+libmutter-cogl-path-6.so.0 mutter-3.36.2_1
+libmutter-cogl-6.so mutter-3.36.2_1
+libmutter-cogl-6.so.0 mutter-3.36.2_1
+libmutter-cogl-pango-6.so mutter-3.36.2_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.2_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..b9831236804 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,35 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+ -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland
+ -Dxwayland_initfd=disabled"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 5afe2c77e1085cc9f3ef7f173a098e69e3372a9f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 39/52] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..b67ac653d90 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From 48fbd79525e031328c874b79a3f563e43085d86c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 40/52] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 5b4e1fb6242f12ad2873b3dda87312720f896b56 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 41/52] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 15a469ecae522ae26d2f7217967fb0993d44ab2b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 42/52] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 1effeaa9bc38ced0bb88691f9544282c794510f7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 43/52] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 56e26cbb4f703ef74060a25ccfe3a72dbed0d3a5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 44/52] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 0e8298858bda4d3b5361f2d614d6f568dc954f2b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 45/52] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From f46df6fbbd3fb7cc2b5a8cfc4e4f1a26e844c8bc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 46/52] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From cf9dd2793d04d10ee9062427225f22df2603948d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 47/52] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 6d80f5da26f6804a5e61104c4e9e5a13e5efdbb4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 48/52] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 2797959f250a6e5210f93ae917604df70a14a14f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 49/52] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 0cfbc1e626cb4078d087016846b12a626fcb4172 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 50/52] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 83d6a418d75460698f4e45f343cec63f87967769 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 51/52] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 8c6a4acce2fa20f32d132fa32fa2ed719bacda23 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 52/52] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index c3c47392ff6..7ee74cc7990 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (65 preceding siblings ...)
  2020-05-30 19:22 ` [PR PATCH] [Updated] " mnabid
@ 2020-05-31  2:56 ` mnabid
  2020-06-01  1:11 ` mnabid
                   ` (20 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-05-31  2:56 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1909 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for **[`pipewire-0.3.5`](https://github.com/void-linux/void-packages/pull/20413)** to be merged.

<details>
<summary><b>List of updates : </b><i>(click to expand)</i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.3
 * evolution -> 3.36.3
 * evolution-data-server -> 3.36.3
 * evolution-ews -> 3.36.3
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.2
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.3
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.2
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.2
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.2
 * nautilus -> 3.36.3
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built in `x86_64`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 719379 bytes --]

From bc865be14b51d6baace5112e372d9d5f85a12c54 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/51] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 73436d079df..5a66663c2d5 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1178,7 +1178,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From af6ec9b36ce43378ae29da651050747eccc29c60 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/51] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 0b47162ddfd51a629acd08b4a74ba55650724bd7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/51] nautilus: update to 3.36.3.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..94cb10492ca 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=b6cafc7ab1e70a64383de391b6097fcccbf36b208f8502d8c46423224fd30ef8
 
 build_options="gir"
 build_options_default="gir"

From 63dd1018137ba8d0e24ed154b37f523c0e9463d2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 04/51] gnome-music: update to 3.36.2.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..802bcea891f 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=abad413aebfa8f8141abc7164809e8c4677f8b6538f892128193e097e0e982a5
 lib32disabled=yes

From 12b6fcc8b799612db624c72c9a9509677b65ca3f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 05/51] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 6ffab261542bb2e4fa5d8bf97c53fc0d8d0abf69 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 06/51] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From ceaaeac0c9fbc2586dc5c7fb06aa87b6548cd8be Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 07/51] evince: update to 3.36.3.

---
 srcpkgs/evince/template | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..fe405048f44 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,14 +1,14 @@
 # Template file for 'evince'
 pkgname=evince
-version=3.36.0
+version=3.36.3
 revision=1
 build_helper="gir"
-build_style=gnu-configure
-configure_args="$(vopt_enable gir introspection) --disable-schemas-compile
- --enable-comics --disable-static --enable-xps --disable-t1lib
- --disable-browser-plugin --enable-ps"
+build_style=meson
+configure_args="-Dcomics=enabled -Dxps=enabled -Dt1lib=enabled -Dbrowser_plugin=true
+ -Dps=enabled -Ddvi=disabled -Dintrospection=$(vopt_if gir true false)
+ -Dgtk_doc=$(vopt_if gtk_doc true false)"
 hostmakedepends="adwaita-icon-theme gettext glib-devel gnome-doc-utils
- itstool pkg-config perl-XML-Parser appstream-glib"
+ itstool pkg-config perl-XML-Parser appstream-glib $(vopt_if gtk_doc gtk-doc)"
 # XXX missing packages for DVI backend.
 makedepends="adwaita-icon-theme djvulibre-devel gnome-desktop-devel libSM-devel
  libgxps-devel libsecret-devel libspectre-devel nautilus-devel
@@ -19,9 +19,9 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evince"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=851d9b5234d479ab4c8f7c5cbaceb0e91ad79ccba1a7b733cde72dacc928fba8
+checksum=af2ebdf7f74e6580c4f1a12bdfe26b9ff90374d7acae061de0666d64012a9db2
 
-build_options="gir"
+build_options="gir gtk_doc"
 build_options_default="gir"
 
 libevince_package() {
@@ -41,7 +41,9 @@ evince-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove "usr/lib/*.so"
-		vmove usr/share/gtk-doc
+		if [ "$build_option_gtk_doc" ]; then
+			vmove usr/share/gtk-doc
+		fi
 		if [ "$build_option_gir" ]; then
 			vmove usr/share/gir-1.0
 		fi

From 5164931d095bb08cb3402a4b0c6655a95c7fd536 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 08/51] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From 392fb0a105eececdcb918f6fc9df0cd7c3be5efb Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 09/51] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 40aa73dacc196893e562c6cf5ad72f39d0303168 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 10/51] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From 31e3fa55ab21b4b62b0697bd6c27183731d9f763 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 11/51] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From f8db1cff45258608fcb4af0f96c65cadcceb5382 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 12/51] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From ac3ac134f5c0f1d724f706a272a3ee110b87afe8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 13/51] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 1d40bbb5b7fec4eca9bca78c7142996bbaf835ee Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 14/51] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From a881e6da22894c14b5ee4a85904a65782695c559 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 15/51] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From b3e2be891c06ce7014de207e30b4d3f76fc2b9ca Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 16/51] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 06c6b9e13ec552bf24c27e78503210bce7ed3f20 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 17/51] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 657eeecff5a19bd04f186813fb343ab96f133651 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 18/51] gnome-initial-setup: update to 3.36.3.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..caa33c2695e 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.3
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=d8a933f8c822cc293cc10b532779f8562342ae2271b929879e8f108491f4c285

From beabdbc9e2f09b7097adddd4985e195226ea3184 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 19/51] evolution-data-server: update to 3.36.3.

---
 srcpkgs/evolution-data-server/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 4ae820be068..ebf8145f88c 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,7 +1,7 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
-revision=2
+version=3.36.3
+revision=1
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From ff959904d96202a64a8faa45e6e2de91d323a917 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 20/51] evolution: update to 3.36.3.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..d95c07eb72c 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=54e16caa286c02d4fe94b43e33abf5cd6f3a1502181bb8cf557aadc886b5ca03
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 5eaea0a48d87809274510a5baee2017e331feb6d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 21/51] evolution-ews: update to 3.36.3.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..38fd62d39e1 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=7a97a59b10f7a48a3bcf6d476c6a2c068ec5c48c546a433812691b8301752d04

From 87ea437f73046265d49f79398b8d576788080aee Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 22/51] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From f7f3a76e4d444ece7ddd11560535098e8e1ea0c6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 23/51] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From ac898a1ab50c2f368bf2601a610df76e81b010a4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 24/51] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 23b6f729d4f925db8b44482fcbf6bd2f7070fa54 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 25/51] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From be587d518d05aabe659f320632286e3590227627 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 26/51] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 5a66663c2d5..760197c9f14 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -836,9 +836,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 8dfcbc402b52d6b0791e1d3dc45d271fe7e52a62 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 27/51] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From e66c4e1d1a3a0b04fc9c9d745ea8fd7a0f7f2b88 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 28/51] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 9239f95af34a66a8ee8a6f574c2b71b0646bf085 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 29/51] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 37074cb348d..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
-revision=2
+version=2.3.4
+revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From ee9d20caa0deab62c036552f878f4fafaeabfc4c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 30/51] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 2228592b0f8b8f953c9209759969863262c91a25 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 31/51] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 03f115aca611c081bbe175a91faa0b335038173b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 32/51] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 760197c9f14..6ccc1f2ca3d 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -568,7 +568,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 6f901dfefc5b0d9065f1571c709c66e152056542 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 33/51] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 6ccc1f2ca3d..2d3e936c122 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -570,6 +570,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 318443e0e83f8c120601e13b9c15f690740c5f62 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 34/51] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From c3efa6c73c18a9286128e6bfe25179d66b664b6b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 35/51] gnome-flashback: update to 3.36.3.

Added PAM config to enable screen locking.
---
 .../gnome-flashback/files/gnome-flashback.pam |  6 ++++
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 27 ++++++++++++------
 3 files changed, 52 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/files/gnome-flashback.pam
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/files/gnome-flashback.pam b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
new file mode 100644
index 00000000000..ebbb51dd0e8
--- /dev/null
+++ b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth       include	system-auth
+auth       optional     pam_gnome_keyring.so
+account    include	system-auth
+password   include	system-auth
+session    include	system-auth
diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..08566df5fd4 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,29 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="gettext-devel pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vinstall ${FILESDIR}/gnome-flashback.pam 644 /etc/pam.d gnome-flashback
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 38b58f5d7341cc63b175c5eb918d43d04720c86a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 36/51] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From a6c4b428d2bd15cc5f94ff2711f4b6bd3f3673f0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 37/51] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++-------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 27 ++++++++++---------
 3 files changed, 23 insertions(+), 33 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 2d3e936c122..ed60cad59b2 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3014,15 +3014,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.2_1
+libmutter-clutter-6.so mutter-3.36.2_1
+libmutter-clutter-6.so.0 mutter-3.36.2_1
+libmutter-cogl-path-6.so mutter-3.36.2_1
+libmutter-cogl-path-6.so.0 mutter-3.36.2_1
+libmutter-cogl-6.so mutter-3.36.2_1
+libmutter-cogl-6.so.0 mutter-3.36.2_1
+libmutter-cogl-pango-6.so mutter-3.36.2_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.2_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..b9831236804 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,35 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+ -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland
+ -Dxwayland_initfd=disabled"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 487c256dd8b2b4e773e90c8214672ec0d11ccdb5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 38/51] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..b67ac653d90 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From b8836186fa69dcc640b33d6fc45d30dd822d003f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 39/51] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 9e5922e8db80de3906f34049e9372d5b9bdda989 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 40/51] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From f0005d7077d0175fb849f80bf2cf02b272985179 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 41/51] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 1e3efe6d5b2e9f64dbe559e45badbfdeae2b9022 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 42/51] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From f438ecce6191fb836284459460ce3b891b7a29e3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 43/51] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 9713d53a72d4d0de4c53660958f228e43c47584d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 44/51] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 0c892e79f40d95871c74a3131c0714faffb44b20 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 45/51] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 7c58bdad13e1905db8d868fc5754219681f670de Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 46/51] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 0ba7bc3741b8ec50dd96af3b443078a701d56822 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 47/51] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From c5df782bbd605b58b4fb5bc39584f5465a2efa1f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 48/51] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From ef1d280280cca464ebf2210fa519b2e6237ae416 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 49/51] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 94758b801ebcb46166ec7ea1b7a10ad3e8a8bcfd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 50/51] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 87e29ac0470431f7339475931b2948d6cefd1afe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 51/51] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index c3c47392ff6..7ee74cc7990 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] [WIP] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (66 preceding siblings ...)
  2020-05-31  2:56 ` mnabid
@ 2020-06-01  1:11 ` mnabid
  2020-07-03  9:49 ` mnabid
                   ` (19 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-06-01  1:11 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1909 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

[WIP] gnome 3.36 updates
Waiting for **[`pipewire-0.3.5`](https://github.com/void-linux/void-packages/pull/20413)** to be merged.

<details>
<summary><b>List of updates : </b><i>(click to expand)</i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.3
 * evolution -> 3.36.3
 * evolution-data-server -> 3.36.3
 * evolution-ews -> 3.36.3
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.2
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.3
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.2
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.2
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.2
 * nautilus -> 3.36.3
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built in `x86_64`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 719379 bytes --]

From e44d5c9d1ebbab10fee13d0dc2d86d715083a65e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 15:49:16 +0600
Subject: [PATCH 01/51] gnome-desktop: update to 3.36.2.

---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index e47fa9e3ec5..f2ef2ca1f91 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1179,7 +1179,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 1b4d744f55d83ef7a824839c587c40703e36c276 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 13:17:07 +0600
Subject: [PATCH 02/51] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From db284e272d8db6977250e2b33b7709d30aa6c292 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:20:15 +0600
Subject: [PATCH 03/51] nautilus: update to 3.36.3.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..94cb10492ca 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=b6cafc7ab1e70a64383de391b6097fcccbf36b208f8502d8c46423224fd30ef8
 
 build_options="gir"
 build_options_default="gir"

From f9ca94a71f7a4e5e88fe1c1b225622d7bf28d71b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 12:43:02 +0600
Subject: [PATCH 04/51] gnome-music: update to 3.36.3.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..2273ac1ca16 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.3
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=54f8d240f8995f4cff4dce5e1cbdc60befc81d79bf72c1e4fd807ed05c114237
 lib32disabled=yes

From 379ab83f0be1fa1b991d67571aef67d7dd68b7a7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:02:47 +0600
Subject: [PATCH 05/51] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 112083ed1e18b4617042268494b2b5736d3804ef Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:17:42 +0600
Subject: [PATCH 06/51] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index f5340000eb5..276399ca2cc 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 8247e7ef0178ccc4259374feb6b2b1d6189a9b77 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 16:08:23 +0600
Subject: [PATCH 07/51] evince: update to 3.36.3.

---
 srcpkgs/evince/template | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..fe405048f44 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,14 +1,14 @@
 # Template file for 'evince'
 pkgname=evince
-version=3.36.0
+version=3.36.3
 revision=1
 build_helper="gir"
-build_style=gnu-configure
-configure_args="$(vopt_enable gir introspection) --disable-schemas-compile
- --enable-comics --disable-static --enable-xps --disable-t1lib
- --disable-browser-plugin --enable-ps"
+build_style=meson
+configure_args="-Dcomics=enabled -Dxps=enabled -Dt1lib=enabled -Dbrowser_plugin=true
+ -Dps=enabled -Ddvi=disabled -Dintrospection=$(vopt_if gir true false)
+ -Dgtk_doc=$(vopt_if gtk_doc true false)"
 hostmakedepends="adwaita-icon-theme gettext glib-devel gnome-doc-utils
- itstool pkg-config perl-XML-Parser appstream-glib"
+ itstool pkg-config perl-XML-Parser appstream-glib $(vopt_if gtk_doc gtk-doc)"
 # XXX missing packages for DVI backend.
 makedepends="adwaita-icon-theme djvulibre-devel gnome-desktop-devel libSM-devel
  libgxps-devel libsecret-devel libspectre-devel nautilus-devel
@@ -19,9 +19,9 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evince"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=851d9b5234d479ab4c8f7c5cbaceb0e91ad79ccba1a7b733cde72dacc928fba8
+checksum=af2ebdf7f74e6580c4f1a12bdfe26b9ff90374d7acae061de0666d64012a9db2
 
-build_options="gir"
+build_options="gir gtk_doc"
 build_options_default="gir"
 
 libevince_package() {
@@ -41,7 +41,9 @@ evince-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove "usr/lib/*.so"
-		vmove usr/share/gtk-doc
+		if [ "$build_option_gtk_doc" ]; then
+			vmove usr/share/gtk-doc
+		fi
 		if [ "$build_option_gir" ]; then
 			vmove usr/share/gir-1.0
 		fi

From 48aeea7fb21a0049e20954cf42153a174997701f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 13:30:56 +0600
Subject: [PATCH 08/51] gnome-maps: update to 3.36.2.

---
 srcpkgs/gnome-maps/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..9fdd27db3bd 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
@@ -12,5 +12,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784
 nocross="evolution-dataserver cross gir doesn't work"

From d34142f4a2ffccef6f10193c12ed24e85318f9a2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 14:27:10 +0600
Subject: [PATCH 09/51] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 300248c5674dc14a8b2fa63f409a3e8be4c3a4ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:02:14 +0600
Subject: [PATCH 10/51] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From 55828b6389440a43ee6598241821f0722390a985 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:52:12 +0600
Subject: [PATCH 11/51] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From 87bc8495ba13629c32e197773b8ed0d145fa5d08 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 15:29:30 +0600
Subject: [PATCH 12/51] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 5780f96cc4b52bab1f67362daaf2517296ac69b8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 27 Apr 2020 16:23:46 +0600
Subject: [PATCH 13/51] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From d1932e4873b6bc3a1c945082de6f0b06f50eab60 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 28 Apr 2020 18:18:00 +0600
Subject: [PATCH 14/51] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 08e9c157426d642e162d6446f86d99201e9b3423 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 14:41:32 +0600
Subject: [PATCH 15/51] gnome-control-center: update to 3.36.2.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..07036cf99f0 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=e0a5eff0c6d6c22db0c54fd070460de874d367ef3f9072e1559b70f28b847817
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 2ab61e46469e6579c810be050a394f88f8525618 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 10:57:45 +0600
Subject: [PATCH 16/51] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From da40fa10608e1369b1fd86af93cfff636dae74f5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 10:11:54 +0600
Subject: [PATCH 17/51] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From bbe1e54d86938e0e6b2c877217fc16dc6c172e26 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:20:52 +0600
Subject: [PATCH 18/51] gnome-initial-setup: update to 3.36.3.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..caa33c2695e 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.3
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=d8a933f8c822cc293cc10b532779f8562342ae2271b929879e8f108491f4c285

From d1226c5ee34ce55233e798d2b2f314ddd0d62531 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:15 +0600
Subject: [PATCH 19/51] evolution-data-server: update to 3.36.3.

---
 srcpkgs/evolution-data-server/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 4ae820be068..ebf8145f88c 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,7 +1,7 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
-revision=2
+version=3.36.3
+revision=1
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From be9fc12a5aaf8f636799e3da92687fe3ab3dddc0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:23 +0600
Subject: [PATCH 20/51] evolution: update to 3.36.3.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..d95c07eb72c 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=54e16caa286c02d4fe94b43e33abf5cd6f3a1502181bb8cf557aadc886b5ca03
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 47031c3492b18502093e0742b84d3dd7bf339172 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:38:27 +0600
Subject: [PATCH 21/51] evolution-ews: update to 3.36.3.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..38fd62d39e1 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=7a97a59b10f7a48a3bcf6d476c6a2c068ec5c48c546a433812691b8301752d04

From 5b450788735dc433ffc86afdafeb1d3a625e0e24 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:20:23 +0600
Subject: [PATCH 22/51] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 5e860b7335b98bc62ec4d75aee3d484aabf9ed28 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:43:52 +0600
Subject: [PATCH 23/51] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From c1729e7b25de577e0832178618d2c05e5c349581 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 12:44:00 +0600
Subject: [PATCH 24/51] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 92e6262ba4aa8162a456067d373ffd1e1285c12b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:47:58 +0600
Subject: [PATCH 25/51] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index cfa1ef35377..10a6ca7bc72 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,21 +1,19 @@
 # Template file for 'python-atspi'
 pkgname=python-atspi
-version=2.32.1
+version=2.36.0
 revision=2
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
-pycompile_module="pyatspi"
-hostmakedepends="pkg-config python python3"
-makedepends="at-spi2-core-devel python-gobject-devel
- python3-gobject-devel"
+hostmakedepends="pkg-config python python3 which"
+makedepends="at-spi2-core-devel python-gobject-devel"
 depends="at-spi2-core python-gobject"
 short_desc="Python2 bindings for AT-SPI"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd
 
 pre_configure() {
 	mkdir -p atspi-${py2_ver}
@@ -46,7 +44,6 @@ do_install() {
 
 python3-atspi_package() {
 	archs=noarch
-	pycompile_module="pyatspi"
 	depends="at-spi2-core python3-gobject"
 	short_desc="${short_desc/Python2/Python3}"
 	pkg_install() {

From 58abb55544de6cb77a5ebe7815ca9421c0b3d8bf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 15:43:01 +0600
Subject: [PATCH 26/51] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index f2ef2ca1f91..6f02d204296 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -836,9 +836,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 6d8f8f8b1e595c6c563ba94acbfce6970c2b81bc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 08:41:56 +0600
Subject: [PATCH 27/51] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 11fe316e154d42274f6e42fcf1aae0c6331db5c0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 07:58:02 +0600
Subject: [PATCH 28/51] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..3b8cd8cb72f 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,6 +1,6 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
@@ -10,4 +10,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From f373092055cf5050ccf7f4aa2bf4e547a19c9c5c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 10:20:56 +0600
Subject: [PATCH 29/51] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 37074cb348d..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
-revision=2
+version=2.3.4
+revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 766ad2318234a4d9e54df26d8d9b184b9de13a53 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 6 May 2020 19:56:14 +0600
Subject: [PATCH 30/51] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From c4c8b575a1c7366ef5901d4db1461ecdd651124f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 5 May 2020 11:03:29 +0600
Subject: [PATCH 31/51] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 02ff15b4a00c50db12e654577e61c02a37dd25ac Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 16:51:42 +0600
Subject: [PATCH 32/51] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 6f02d204296..99955bb61b9 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -568,7 +568,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 3fb1f5e7d79220d5dbae42f736cc320487a75257 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 19 Apr 2020 17:26:36 +0600
Subject: [PATCH 33/51] metacity: update to 3.36.1.

---
 common/shlibs             | 1 +
 srcpkgs/metacity/template | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 99955bb61b9..4cdf7ed7c55 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -570,6 +570,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 1d419267668..bb7dfc0bfc9 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,9 +1,9 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
-hostmakedepends="gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
+hostmakedepends="gettext glib-devel itstool pkg-config yelp-tools zenity"
 makedepends="gsettings-desktop-schemas-devel gtk+3-devel libcanberra-devel
  libglib-devel libgtop-devel libSM-devel libXcomposite-devel libXdamage-devel
  libXfixes-devel libXinerama-devel libXrender-devel libX11-devel pango-devel
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From bd369d178ba01ed63ec7626c17f762135d611cf5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 05:32:10 +0600
Subject: [PATCH 34/51] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From fff687457e3056d05bd95372eb5bb8ff62c557d4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 06:03:55 +0600
Subject: [PATCH 35/51] gnome-flashback: update to 3.36.3.

Added PAM config to enable screen locking.
---
 .../gnome-flashback/files/gnome-flashback.pam |  6 ++++
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 27 ++++++++++++------
 3 files changed, 52 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/files/gnome-flashback.pam
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/files/gnome-flashback.pam b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
new file mode 100644
index 00000000000..ebbb51dd0e8
--- /dev/null
+++ b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth       include	system-auth
+auth       optional     pam_gnome_keyring.so
+account    include	system-auth
+password   include	system-auth
+session    include	system-auth
diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..08566df5fd4 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,29 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="gettext-devel pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vinstall ${FILESDIR}/gnome-flashback.pam 644 /etc/pam.d gnome-flashback
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 15d90dfc6a3008d65ca1311216fe1a7a6ac166fa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Wed, 29 Apr 2020 06:59:40 +0600
Subject: [PATCH 36/51] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 12320290dfc384e24247c10354b314f8f765ff81 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 11:53:29 +0600
Subject: [PATCH 37/51] mutter: update to 3.36.2.

---
 common/shlibs                                 | 18 ++++++-------
 .../patches/fix-cogl-egl-includes.patch       | 11 --------
 srcpkgs/mutter/template                       | 27 ++++++++++---------
 3 files changed, 23 insertions(+), 33 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch

diff --git a/common/shlibs b/common/shlibs
index 4cdf7ed7c55..68b2be02115 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3015,15 +3015,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.2_1
+libmutter-clutter-6.so mutter-3.36.2_1
+libmutter-clutter-6.so.0 mutter-3.36.2_1
+libmutter-cogl-path-6.so mutter-3.36.2_1
+libmutter-cogl-path-6.so.0 mutter-3.36.2_1
+libmutter-cogl-6.so mutter-3.36.2_1
+libmutter-cogl-6.so.0 mutter-3.36.2_1
+libmutter-cogl-pango-6.so mutter-3.36.2_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.2_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 4e0bd32b67d..b9831236804 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,35 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=2
+version=3.36.2
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+ -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland
+ -Dxwayland_initfd=disabled"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=75b3764eb059fc935a54523a62bec1bedb935284046b6daa50869b195adddaf4
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From b75c2ba02330a8c3a95e6062bfd803cd6b4a950a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:23 +0600
Subject: [PATCH 38/51] gnome-shell: update to 3.36.2.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..b67ac653d90 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=3b129b2a1f1f1654a101098ea8b91a73a836aad7d166f52dd46b1c6037ec1753

From 4b7fca22212c86c4499c6fcf96645f2de21cda49 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 4 May 2020 14:38:32 +0600
Subject: [PATCH 39/51] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 9f3a6f4989efcbb24dfb638851faa2733aab8e6e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 7 May 2020 12:27:55 +0600
Subject: [PATCH 40/51] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..099c4cc9d4d 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -14,14 +14,14 @@ hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
 depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+ xrdb gsettings-desktop-schemas"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From c00d0cb01f8df0f29bfa61caf3bad68fcc9d5aa5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Fri, 1 May 2020 18:24:02 +0530
Subject: [PATCH 41/51] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From a4069c8523ad56c166f3530ea3e83c46f2831438 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 13:46:16 +0600
Subject: [PATCH 42/51] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 44713b3324fa316d3122bb8b0f51e81dc707c287 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:49:13 +0600
Subject: [PATCH 43/51] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From abf27a8e306756255cbc21a9b95e8057b14e6d70 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:34:54 +0600
Subject: [PATCH 44/51] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From f351075e3a7efee42bad262d6ea7d0d7faa4807b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:47:31 +0600
Subject: [PATCH 45/51] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From bb3ca9b794801436cecd16ce7c9ff45c716d9fd9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:55:18 +0600
Subject: [PATCH 46/51] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 18194b197aa4a044b9151190d78afea28572724b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:56:56 +0600
Subject: [PATCH 47/51] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 62704449781e68cf8477149b4638ccab730d7565 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 02:27:17 +0600
Subject: [PATCH 48/51] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 8a154007a0adb0010c890f4aea9e76fb5575ddcc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Sun, 3 May 2020 11:43:19 +0600
Subject: [PATCH 49/51] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From f0351e054d6ebf4b0c17a1ccc01699e4426597d9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 02:57:57 +0600
Subject: [PATCH 50/51] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 831fb23c07fa3df0ab512a6079259fc1d5317514 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Thu, 30 Apr 2020 03:04:07 +0600
Subject: [PATCH 51/51] lutris: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index c3c47392ff6..7ee74cc7990 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (67 preceding siblings ...)
  2020-06-01  1:11 ` mnabid
@ 2020-07-03  9:49 ` mnabid
  2020-07-03 12:36 ` [PR PATCH] [Updated] " mnabid
                   ` (18 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-07-03  9:49 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 847 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-653458578

Comment:
@sgn I got errors when building `evolution-data-server` natively (`x86_64`). 

```
-- Build files have been written to: /builddir/evolution-data-server-3.36.3/build
=> evolution-data-server-3.36.3_1: running pre-build hook: 02-script-wrapper ...
=> evolution-data-server-3.36.3_1: running pre_build ...
=> ERROR: evolution-data-server-3.36.3_1: pre_build: 'return' exited with 1
=> ERROR:   in run_func() at common/xbps-src/shutils/common.sh:21
=> ERROR:   in run_step() at common/xbps-src/shutils/common.sh:48
=> ERROR:   in main() at common/xbps-src/libexec/xbps-src-dobuild.sh:34

```

[Travis log](https://travis-ci.org/github/void-linux/void-packages/jobs/704165158#L2794) shows the same. 

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (68 preceding siblings ...)
  2020-07-03  9:49 ` mnabid
@ 2020-07-03 12:36 ` mnabid
  2020-07-03 12:40 ` mnabid
                   ` (17 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-07-03 12:36 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1836 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

gnome 3.36 updates
<details>
<summary><i>List of updates : </i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.3
 * evolution -> 3.36.3
 * evolution-data-server -> 3.36.3
 * evolution-ews -> 3.36.3
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.3
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.3
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.3
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.3
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.3
 * nautilus -> 3.36.3
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * python3-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built natively in `x86_64` and crossbuilt for `armv7l`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 762613 bytes --]

From ea5d48a3ef6485c6e78d685936289bb15efb1f57 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:42:53 +0600
Subject: [PATCH 01/63] gnome-desktop: update to 3.36.2.

Closes: #21382
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 878ca5a5ac6..4277a983cef 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1182,7 +1182,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 9ba579df44c24b095f48255e65e15f5a0006a52c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:18 +0600
Subject: [PATCH 02/63] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From ad6aafc02be9856bd4f8c4c04b205b2e4e0a2851 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:25 +0600
Subject: [PATCH 03/63] nautilus: update to 3.36.3.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..94cb10492ca 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=b6cafc7ab1e70a64383de391b6097fcccbf36b208f8502d8c46423224fd30ef8
 
 build_options="gir"
 build_options_default="gir"

From 5f107e53c0b851cdace7f374bc53fd468785a826 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:32 +0600
Subject: [PATCH 04/63] gnome-music: update to 3.36.3.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..2273ac1ca16 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.3
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=54f8d240f8995f4cff4dce5e1cbdc60befc81d79bf72c1e4fd807ed05c114237
 lib32disabled=yes

From c6bedb094382288720553b2a14986761daea2e8d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:38 +0600
Subject: [PATCH 05/63] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 2f51aab4dc16e7721c8911d2363aa33409fb99ab Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:51 +0600
Subject: [PATCH 06/63] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index e4cacb7079e..cfa1cf57594 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From b05b79c9bd11b6bbcce29e3a9b753750eeb846b4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:59 +0600
Subject: [PATCH 07/63] evince: update to 3.36.3.

---
 srcpkgs/evince/template | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..fe405048f44 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,14 +1,14 @@
 # Template file for 'evince'
 pkgname=evince
-version=3.36.0
+version=3.36.3
 revision=1
 build_helper="gir"
-build_style=gnu-configure
-configure_args="$(vopt_enable gir introspection) --disable-schemas-compile
- --enable-comics --disable-static --enable-xps --disable-t1lib
- --disable-browser-plugin --enable-ps"
+build_style=meson
+configure_args="-Dcomics=enabled -Dxps=enabled -Dt1lib=enabled -Dbrowser_plugin=true
+ -Dps=enabled -Ddvi=disabled -Dintrospection=$(vopt_if gir true false)
+ -Dgtk_doc=$(vopt_if gtk_doc true false)"
 hostmakedepends="adwaita-icon-theme gettext glib-devel gnome-doc-utils
- itstool pkg-config perl-XML-Parser appstream-glib"
+ itstool pkg-config perl-XML-Parser appstream-glib $(vopt_if gtk_doc gtk-doc)"
 # XXX missing packages for DVI backend.
 makedepends="adwaita-icon-theme djvulibre-devel gnome-desktop-devel libSM-devel
  libgxps-devel libsecret-devel libspectre-devel nautilus-devel
@@ -19,9 +19,9 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evince"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=851d9b5234d479ab4c8f7c5cbaceb0e91ad79ccba1a7b733cde72dacc928fba8
+checksum=af2ebdf7f74e6580c4f1a12bdfe26b9ff90374d7acae061de0666d64012a9db2
 
-build_options="gir"
+build_options="gir gtk_doc"
 build_options_default="gir"
 
 libevince_package() {
@@ -41,7 +41,9 @@ evince-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove "usr/lib/*.so"
-		vmove usr/share/gtk-doc
+		if [ "$build_option_gtk_doc" ]; then
+			vmove usr/share/gtk-doc
+		fi
 		if [ "$build_option_gir" ]; then
 			vmove usr/share/gir-1.0
 		fi

From cd80457afd713fc03b28dff6b5e303ee1717409e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:07 +0600
Subject: [PATCH 08/63] gnome-maps: update to 3.36.2.

... and unmark nocross.
---
 common/shlibs               | 1 +
 srcpkgs/gnome-maps/template | 8 ++++----
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 4277a983cef..7c71fc4ab9f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -622,6 +622,7 @@ libcanberra-gtk3.so.0 libcanberra-gtk3-0.30_6
 libgtop-2.0.so.11 libgtop-2.38.0_1
 librarian.so.0 rarian-0.8.1_1
 libmusikcore.so musikcube-0.60.1_1
+libgnome-maps.so.0 gnome-maps-3.36.2_1
 libgnome-menu-3.so.0 gnome-menus-2.91.6_1
 libart_lgpl_2.so.2 libart-2.3.20_1
 libgnomecanvas-2.so.0 libgnomecanvas-2.30.1_1
diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..a67d84f4396 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,9 +1,10 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
+build_helper="gir"
+hostmakedepends="glib-devel gjs-devel intltool pkg-config AppStream"
 makedepends="folks-devel geoclue2-devel geocode-glib-devel gjs-devel
  gnome-desktop-devel libchamplain-devel rest-devel"
 depends="geoclue2 gfbgraph gjs"
@@ -12,5 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
-nocross="evolution-dataserver cross gir doesn't work"
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784

From 19965834e6e207d0f9529fafa2ba60b576aa7a4d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:14 +0600
Subject: [PATCH 09/63] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 9c22e39236e892b1b81f59b08ae140139f35d1e1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:21 +0600
Subject: [PATCH 10/63] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From fa9d4730a72765b2abe0292ed837eb7519789bc2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:29 +0600
Subject: [PATCH 11/63] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From e09d9ae0ec24661db64abe5a6974a5d2a25c9e2e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:36 +0600
Subject: [PATCH 12/63] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 9d4927c3a77716ca4031f32f649505a1ea252aa3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:44 +0600
Subject: [PATCH 13/63] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 2268d7863ccbc92baeca6f55743e6463848c797e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:52 +0600
Subject: [PATCH 14/63] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From f148c72d91487536d6e31555b3b35104f3a58681 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:01 +0600
Subject: [PATCH 15/63] gnome-control-center: update to 3.36.3.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..53a555525b4 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=bc174d970dbeca3ee19c26019de31e9edf78dc9c4abde16e763566ee38c3691c
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From eaf8433e0b971ca5e52b5d36a8ec7ce5f7727e18 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:08 +0600
Subject: [PATCH 16/63] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From b028c5bd85c9cca465ff2668bab71576baef00cd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:27 +0600
Subject: [PATCH 17/63] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 3e3a985051c666a3ff817d393211341b9806c155 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:36 +0600
Subject: [PATCH 18/63] gnome-initial-setup: update to 3.36.3.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..caa33c2695e 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.3
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=d8a933f8c822cc293cc10b532779f8562342ae2271b929879e8f108491f4c285

From 26c6277039cc26f0109b361983915a2cb01a597b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:43 +0600
Subject: [PATCH 19/63] evolution-data-server: update to 3.36.3.

---
 srcpkgs/evolution-data-server/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 4ae820be068..ebf8145f88c 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,7 +1,7 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
-revision=2
+version=3.36.3
+revision=1
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 852cec4ad9a9c00a6a9aed893fa0cbd3914cdd9d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:56 +0600
Subject: [PATCH 20/63] evolution: update to 3.36.3.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..d95c07eb72c 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=54e16caa286c02d4fe94b43e33abf5cd6f3a1502181bb8cf557aadc886b5ca03
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From c4866f103c8f573781e1a8774c83fe9865f2de1e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:04 +0600
Subject: [PATCH 21/63] evolution-ews: update to 3.36.3.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..38fd62d39e1 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=7a97a59b10f7a48a3bcf6d476c6a2c068ec5c48c546a433812691b8301752d04

From 6aeefd243b97cc21456ab86355c3f486763011d7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:11 +0600
Subject: [PATCH 22/63] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From c8ac11955a09e1b7616a7929c2bb319fc088055b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:19 +0600
Subject: [PATCH 23/63] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 84d2c11d4ae213b3c680b55d972360db5b035ce4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:26 +0600
Subject: [PATCH 24/63] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 461f362e1c1c09f734862021dc3dfe59e045b480 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:41 +0600
Subject: [PATCH 25/63] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index 0141d97f85d..4881056ad76 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,8 +1,8 @@
 # Template file for 'python-atspi'
 # Keep python3-atspi in sync
 pkgname=python-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From 045175da6921024b95ebbfa40cba1bbdd651de78 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:48 +0600
Subject: [PATCH 26/63] python3-atspi: update to 2.36.0.

---
 srcpkgs/python3-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-atspi/template b/srcpkgs/python3-atspi/template
index a33a374fe18..b2360822acf 100644
--- a/srcpkgs/python3-atspi/template
+++ b/srcpkgs/python3-atspi/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-atspi'
 pkgname=python3-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From d21f457a38a76890112642fff60abf39dd34d75b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:56 +0600
Subject: [PATCH 27/63] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 7c71fc4ab9f..5fc34e2c030 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -839,9 +839,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 717ad606362c9c69f2f2488d92f4671c3fa5b300 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:03 +0600
Subject: [PATCH 28/63] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 039c21783a87d750e102e916048fee08576d04e1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:10 +0600
Subject: [PATCH 29/63] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..10ab8d79264 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,13 +1,13 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
+hostmakedepends="gettext docbook-xsl glib-devel libxslt pkg-config vala"
 makedepends="dconf-devel gtk+3-devel"
 short_desc="Low-level configuration system - GTK+ editor"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 1a5577112e4c2ed5bd2bb12a75553f5e17960811 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:16 +0600
Subject: [PATCH 30/63] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 37074cb348d..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
-revision=2
+version=2.3.4
+revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 2e95c22fa663867836f6987d4b593a88d55f92dc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:23 +0600
Subject: [PATCH 31/63] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 53d74a65fcb2392ff0032341840d641bfb3823ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:39 +0600
Subject: [PATCH 32/63] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 3176cbdde15691476fad81640beca3fcb9b172df Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:47 +0600
Subject: [PATCH 33/63] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 5fc34e2c030..cbf3ea17531 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -570,7 +570,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From de5d092b55981716ec092750a78f868ae3b425ea Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:54 +0600
Subject: [PATCH 34/63] metacity: update to 3.36.1.

---
 common/shlibs                                 |  1 +
 .../patches/compositor-vulkan-fix-build.patch | 29 +++++++++++++++++++
 srcpkgs/metacity/template                     |  4 +--
 3 files changed, 32 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch

diff --git a/common/shlibs b/common/shlibs
index cbf3ea17531..74086b2b98b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -572,6 +572,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
new file mode 100644
index 00000000000..960582ded7d
--- /dev/null
+++ b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
@@ -0,0 +1,29 @@
+From 99361f28c8763ea4569b5ae9876028d53ac9a234 Mon Sep 17 00:00:00 2001
+From: Alberts Muktupāvels <alberts.muktupavels@gmail.com>
+Date: Sun, 24 May 2020 13:58:51 +0300
+Subject: [PATCH] compositor-vulkan: fix build
+
+VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE enum was removed in 1.2.140.
+
+https://gitlab.gnome.org/GNOME/metacity/-/issues/10
+---
+ src/compositor/meta-compositor-vulkan.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git src/compositor/meta-compositor-vulkan.c src/compositor/meta-compositor-vulkan.c
+index b87b5194..53b7b3ff 100644
+--- src/compositor/meta-compositor-vulkan.c
++++ src/compositor/meta-compositor-vulkan.c
+@@ -810,7 +810,9 @@ device_type_to_string (VkPhysicalDeviceType type)
+         return "cpu";
+         break;
+ 
++#if VK_HEADER_VERSION < 140
+       case VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE:
++#endif
+       case VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM:
+       default:
+         break;
+-- 
+GitLab
+
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 7fb86fd964c..7e22aeab5c7 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,6 +1,6 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
 hostmakedepends="gettext gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From 4f5b657ea2f1b0fdb0ddf3044eb7eda2fcfec4d2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:01 +0600
Subject: [PATCH 35/63] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From ab92a48a4694d973291d893ce37838c49b838346 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:09 +0600
Subject: [PATCH 36/63] gnome-flashback: update to 3.36.3.

Added PAM config to enable screen locking.
---
 .../gnome-flashback/files/gnome-flashback.pam |  6 ++++
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 27 ++++++++++++------
 3 files changed, 52 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/files/gnome-flashback.pam
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/files/gnome-flashback.pam b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
new file mode 100644
index 00000000000..ebbb51dd0e8
--- /dev/null
+++ b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth       include	system-auth
+auth       optional     pam_gnome_keyring.so
+account    include	system-auth
+password   include	system-auth
+session    include	system-auth
diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..08566df5fd4 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,29 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="gettext-devel pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vinstall ${FILESDIR}/gnome-flashback.pam 644 /etc/pam.d gnome-flashback
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 5deb17ccbaf2f0a993e2049052ff478eca5d5b75 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:24 +0600
Subject: [PATCH 37/63] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From fcc3584d8615b010532126aace6ffca39d266166 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:30 +0600
Subject: [PATCH 38/63] mutter: update to 3.36.3.

---
 common/shlibs                                 |  18 +-
 .../patches/fix-cogl-egl-includes.patch       |  11 -
 srcpkgs/mutter/patches/pipewire-0.3.patch     | 521 ------------------
 srcpkgs/mutter/template                       |  27 +-
 4 files changed, 23 insertions(+), 554 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
 delete mode 100644 srcpkgs/mutter/patches/pipewire-0.3.patch

diff --git a/common/shlibs b/common/shlibs
index 74086b2b98b..23e0c8f685a 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3022,15 +3022,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.3_1
+libmutter-clutter-6.so mutter-3.36.3_1
+libmutter-clutter-6.so.0 mutter-3.36.3_1
+libmutter-cogl-path-6.so mutter-3.36.3_1
+libmutter-cogl-path-6.so.0 mutter-3.36.3_1
+libmutter-cogl-6.so mutter-3.36.3_1
+libmutter-cogl-6.so.0 mutter-3.36.3_1
+libmutter-cogl-pango-6.so mutter-3.36.3_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.3_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/patches/pipewire-0.3.patch b/srcpkgs/mutter/patches/pipewire-0.3.patch
deleted file mode 100644
index ebff65fba85..00000000000
--- a/srcpkgs/mutter/patches/pipewire-0.3.patch
+++ /dev/null
@@ -1,521 +0,0 @@
-Build mutter against pipewire-0.3, based on a patch at:
-https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1062
---- meson.build
-+++ meson.build
-@@ -50,7 +50,7 @@ libinput_req = '>= 1.7'
- gbm_req = '>= 10.3'
-
- # screen cast version requirements
--libpipewire_req = '>= 0.2.5'
-+libpipewire_req = '>= 0.3.0'
-
- gnome = import('gnome')
- pkg = import('pkgconfig')
-@@ -241,7 +241,7 @@ endif
-
- have_remote_desktop = get_option('remote_desktop')
- if have_remote_desktop
--  libpipewire_dep = dependency('libpipewire-0.2', version: libpipewire_req)
-+  libpipewire_dep = dependency('libpipewire-0.3', version: libpipewire_req)
- endif
-
- have_introspection = get_option('introspection')
-diff --git a/src/backends/meta-screen-cast-stream-src.c b/src/backends/meta-screen-cast-stream-src.c
-index 82c5cba436..ba1ce94a7e 100644
---- src/backends/meta-screen-cast-stream-src.c
-+++ src/backends/meta-screen-cast-stream-src.c
-@@ -29,6 +29,7 @@
- #include <spa/param/props.h>
- #include <spa/param/format-utils.h>
- #include <spa/param/video/format-utils.h>
-+#include <spa/utils/result.h>
- #include <stdint.h>
- #include <sys/mman.h>
-
-@@ -62,15 +63,6 @@ enum
-
- static guint signals[N_SIGNALS];
-
--typedef struct _MetaSpaType
--{
--  struct spa_type_media_type media_type;
--  struct spa_type_media_subtype media_subtype;
--  struct spa_type_format_video format_video;
--  struct spa_type_video_format video_format;
--  uint32_t meta_cursor;
--} MetaSpaType;
--
- typedef struct _MetaPipeWireSource
- {
-   GSource base;
-@@ -82,19 +74,19 @@ typedef struct _MetaScreenCastStreamSrcPrivate
- {
-   MetaScreenCastStream *stream;
-
-+  struct pw_context *pipewire_context;
-   struct pw_core *pipewire_core;
--  struct pw_remote *pipewire_remote;
--  struct pw_type *pipewire_type;
-   MetaPipeWireSource *pipewire_source;
--  struct spa_hook pipewire_remote_listener;
-+  struct spa_hook pipewire_core_listener;
-
-   gboolean is_enabled;
-
-   struct pw_stream *pipewire_stream;
-   struct spa_hook pipewire_stream_listener;
-+  uint32_t node_id;
-
--  MetaSpaType spa_type;
-   struct spa_video_info_raw video_format;
-+  int video_stride;
-
-   uint64_t last_frame_timestamp_us;
-
-@@ -112,8 +104,6 @@ G_DEFINE_TYPE_WITH_CODE (MetaScreenCastStreamSrc,
-                                                 meta_screen_cast_stream_src_init_initable_iface)
-                          G_ADD_PRIVATE (MetaScreenCastStreamSrc))
-
--#define PROP_RANGE(min, max) 2, (min), (max)
--
- static void
- meta_screen_cast_stream_src_get_specs (MetaScreenCastStreamSrc *src,
-                                        int                     *width,
-@@ -286,9 +276,6 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-                                                               int                      x,
-                                                               int                      y)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-
-   spa_meta_cursor->id = 1;
-@@ -300,7 +287,7 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   spa_meta_cursor->hotspot.x = 0;
-@@ -317,9 +304,6 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-                                                         int                      y,
-                                                         float                    scale)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   CoglTexture *cursor_texture;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-   int hotspot_x, hotspot_y;
-@@ -346,7 +330,7 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   meta_cursor_sprite_get_hotspot (cursor_sprite, &hotspot_x, &hotspot_y);
-@@ -382,12 +366,10 @@ static void
- add_cursor_metadata (MetaScreenCastStreamSrc *src,
-                      struct spa_buffer       *spa_buffer)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_cursor *spa_meta_cursor;
-
--  spa_meta_cursor = spa_buffer_find_meta (spa_buffer, spa_type->meta_cursor);
-+  spa_meta_cursor = spa_buffer_find_meta_data (spa_buffer, SPA_META_Cursor,
-+                                               sizeof (*spa_meta_cursor));
-   if (spa_meta_cursor)
-     meta_screen_cast_stream_src_set_cursor_metadata (src, spa_meta_cursor);
- }
-@@ -447,14 +429,14 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-     {
-       data = spa_buffer->datas[0].data;
-     }
--  else if (spa_buffer->datas[0].type == priv->pipewire_type->data.MemFd)
-+  else if (spa_buffer->datas[0].type == SPA_DATA_MemFd)
-     {
-       map = mmap (NULL, spa_buffer->datas[0].maxsize + spa_buffer->datas[0].mapoffset,
-                   PROT_READ | PROT_WRITE, MAP_SHARED,
-                   spa_buffer->datas[0].fd, 0);
-       if (map == MAP_FAILED)
-         {
--          g_warning ("Failed to mmap pipewire stream buffer: %s\n",
-+          g_warning ("Failed to mmap pipewire stream buffer: %s",
-                      strerror (errno));
-           return;
-         }
-@@ -469,28 +451,30 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-
-   if (meta_screen_cast_stream_src_record_frame (src, data))
-     {
--      struct spa_meta_video_crop *spa_meta_video_crop;
-+      struct spa_meta_region *spa_meta_video_crop;
-
-       spa_buffer->datas[0].chunk->size = spa_buffer->datas[0].maxsize;
-+      spa_buffer->datas[0].chunk->stride = priv->video_stride;
-
-       /* Update VideoCrop if needed */
-       spa_meta_video_crop =
--        spa_buffer_find_meta (spa_buffer, priv->pipewire_type->meta.VideoCrop);
-+        spa_buffer_find_meta_data (spa_buffer, SPA_META_VideoCrop,
-+                                   sizeof (*spa_meta_video_crop));
-       if (spa_meta_video_crop)
-         {
-           if (meta_screen_cast_stream_src_get_videocrop (src, &crop_rect))
-             {
--              spa_meta_video_crop->x = crop_rect.x;
--              spa_meta_video_crop->y = crop_rect.y;
--              spa_meta_video_crop->width = crop_rect.width;
--              spa_meta_video_crop->height = crop_rect.height;
-+              spa_meta_video_crop->region.position.x = crop_rect.x;
-+              spa_meta_video_crop->region.position.y = crop_rect.y;
-+              spa_meta_video_crop->region.size.width = crop_rect.width;
-+              spa_meta_video_crop->region.size.height = crop_rect.height;
-             }
-           else
-             {
--              spa_meta_video_crop->x = 0;
--              spa_meta_video_crop->y = 0;
--              spa_meta_video_crop->width = priv->stream_width;
--              spa_meta_video_crop->height = priv->stream_height;
-+              spa_meta_video_crop->region.position.x = 0;
-+              spa_meta_video_crop->region.position.y = 0;
-+              spa_meta_video_crop->region.size.width = priv->stream_width;
-+              spa_meta_video_crop->region.size.height = priv->stream_height;
-             }
-         }
-     }
-@@ -555,7 +539,6 @@ on_stream_state_changed (void                 *data,
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  uint32_t node_id;
-
-   switch (state)
-     {
-@@ -563,14 +546,12 @@ on_stream_state_changed (void                 *data,
-       g_warning ("pipewire stream error: %s", error_message);
-       meta_screen_cast_stream_src_notify_closed (src);
-       break;
--    case PW_STREAM_STATE_CONFIGURE:
--      node_id = pw_stream_get_node_id (priv->pipewire_stream);
--      g_signal_emit (src, signals[READY], 0, (unsigned int) node_id);
--      break;
--    case PW_STREAM_STATE_UNCONNECTED:
--    case PW_STREAM_STATE_CONNECTING:
--    case PW_STREAM_STATE_READY:
-     case PW_STREAM_STATE_PAUSED:
-+      if (priv->node_id == SPA_ID_INVALID && priv->pipewire_stream)
-+        {
-+          priv->node_id = pw_stream_get_node_id (priv->pipewire_stream);
-+          g_signal_emit (src, signals[READY], 0, (unsigned int) priv->node_id);
-+        }
-       if (meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_disable (src);
-       break;
-@@ -578,68 +559,69 @@ on_stream_state_changed (void                 *data,
-       if (!meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_enable (src);
-       break;
-+    case PW_STREAM_STATE_UNCONNECTED:
-+    case PW_STREAM_STATE_CONNECTING:
-+      break;
-     }
- }
-
- static void
--on_stream_format_changed (void                 *data,
--                          const struct spa_pod *format)
-+on_stream_param_changed (void                 *data,
-+                         uint32_t              id,
-+                         const struct spa_pod *format)
- {
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   uint8_t params_buffer[1024];
-   int32_t width, height, stride, size;
-   struct spa_pod_builder pod_builder;
-   const struct spa_pod *params[3];
-   const int bpp = 4;
-
--  if (!format)
--    {
--      pw_stream_finish_format (priv->pipewire_stream, 0, NULL, 0);
--      return;
--    }
-+  if (!format || id != SPA_PARAM_Format)
-+    return;
-
-   spa_format_video_raw_parse (format,
--                              &priv->video_format,
--                              &priv->spa_type.format_video);
-+                              &priv->video_format);
-
-   width = priv->video_format.size.width;
-   height = priv->video_format.size.height;
-   stride = SPA_ROUND_UP_N (width * bpp, 4);
-   size = height * stride;
-
-+  priv->video_stride = stride;
-+
-   pod_builder = SPA_POD_BUILDER_INIT (params_buffer, sizeof (params_buffer));
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idBuffers, pipewire_type->param_buffers.Buffers,
--    ":", pipewire_type->param_buffers.size, "i", size,
--    ":", pipewire_type->param_buffers.stride, "i", stride,
--    ":", pipewire_type->param_buffers.buffers, "iru", 16, PROP_RANGE (2, 16),
--    ":", pipewire_type->param_buffers.align, "i", 16);
--
--  params[1] = spa_pod_builder_object (
-+    SPA_TYPE_OBJECT_ParamBuffers, SPA_PARAM_Buffers,
-+    SPA_PARAM_BUFFERS_buffers, SPA_POD_CHOICE_RANGE_Int (16, 2, 16),
-+    SPA_PARAM_BUFFERS_blocks, SPA_POD_Int (1),
-+    SPA_PARAM_BUFFERS_size, SPA_POD_Int (size),
-+    SPA_PARAM_BUFFERS_stride, SPA_POD_Int (stride),
-+    SPA_PARAM_BUFFERS_align, SPA_POD_Int (16));
-+
-+  params[1] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", pipewire_type->meta.VideoCrop,
--    ":", pipewire_type->param_meta.size, "i", sizeof (struct spa_meta_video_crop));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_VideoCrop),
-+    SPA_PARAM_META_size, SPA_POD_Int (sizeof (struct spa_meta_region)));
-
--  params[2] = spa_pod_builder_object (
-+  params[2] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", priv->spa_type.meta_cursor,
--    ":", pipewire_type->param_meta.size, "i", CURSOR_META_SIZE (64, 64));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_Cursor),
-+    SPA_PARAM_META_size, SPA_POD_Int (CURSOR_META_SIZE (64, 64)));
-
--  pw_stream_finish_format (priv->pipewire_stream, 0,
--                           params, G_N_ELEMENTS (params));
-+  pw_stream_update_params (priv->pipewire_stream, params, G_N_ELEMENTS (params));
- }
-
- static const struct pw_stream_events stream_events = {
-   PW_VERSION_STREAM_EVENTS,
-   .state_changed = on_stream_state_changed,
--  .format_changed = on_stream_format_changed,
-+  .param_changed = on_stream_param_changed,
- };
-
- static struct pw_stream *
-@@ -652,8 +634,6 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   uint8_t buffer[1024];
-   struct spa_pod_builder pod_builder =
-     SPA_POD_BUILDER_INIT (buffer, sizeof (buffer));
--  MetaSpaType *spa_type = &priv->spa_type;
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   float frame_rate;
-   MetaFraction frame_rate_fraction;
-   struct spa_fraction max_framerate;
-@@ -661,7 +641,9 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   const struct spa_pod *params[1];
-   int result;
-
--  pipewire_stream = pw_stream_new (priv->pipewire_remote,
-+  priv->node_id = SPA_ID_INVALID;
-+
-+  pipewire_stream = pw_stream_new (priv->pipewire_core,
-                                    "meta-screen-cast-src",
-                                    NULL);
-   if (!pipewire_stream)
-@@ -682,17 +664,17 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   max_framerate = SPA_FRACTION (frame_rate_fraction.num,
-                                 frame_rate_fraction.denom);
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idEnumFormat, pipewire_type->spa_format,
--    "I", spa_type->media_type.video,
--    "I", spa_type->media_subtype.raw,
--    ":", spa_type->format_video.format, "I", spa_type->video_format.BGRx,
--    ":", spa_type->format_video.size, "R", &SPA_RECTANGLE (priv->stream_width,
--                                                           priv->stream_height),
--    ":", spa_type->format_video.framerate, "F", &SPA_FRACTION (0, 1),
--    ":", spa_type->format_video.max_framerate, "Fru", &max_framerate,
--                                                      PROP_RANGE (&min_framerate,
-+    SPA_TYPE_OBJECT_Format, SPA_PARAM_EnumFormat,
-+    SPA_FORMAT_mediaType, SPA_POD_Id (SPA_MEDIA_TYPE_video),
-+    SPA_FORMAT_mediaSubtype, SPA_POD_Id (SPA_MEDIA_SUBTYPE_raw),
-+    SPA_FORMAT_VIDEO_format, SPA_POD_Id (SPA_VIDEO_FORMAT_BGRx),
-+    SPA_FORMAT_VIDEO_size, SPA_POD_Rectangle (&SPA_RECTANGLE (priv->stream_width,
-+                                                              priv->stream_height)),
-+    SPA_FORMAT_VIDEO_framerate, SPA_POD_Fraction (&SPA_FRACTION (0, 1)),
-+    SPA_FORMAT_VIDEO_maxFramerate, SPA_POD_CHOICE_RANGE_Fraction (&max_framerate,
-+                                                                  &min_framerate,
-                                                                   &max_framerate));
-
-   pw_stream_add_listener (pipewire_stream,
-@@ -702,7 +684,7 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-
-   result = pw_stream_connect (pipewire_stream,
-                               PW_DIRECTION_OUTPUT,
--                              NULL,
-+                              SPA_ID_INVALID,
-                               (PW_STREAM_FLAG_DRIVER |
-                                PW_STREAM_FLAG_MAP_BUFFERS),
-                               params, G_N_ELEMENTS (params));
-@@ -717,40 +699,18 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
- }
-
- static void
--on_state_changed (void                 *data,
--                  enum pw_remote_state  old,
--                  enum pw_remote_state  state,
--                  const char           *error_message)
-+on_core_error (void       *data,
-+               uint32_t    id,
-+	       int         seq,
-+	       int         res,
-+	       const char *message)
- {
-   MetaScreenCastStreamSrc *src = data;
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_stream *pipewire_stream;
--  GError *error = NULL;
-
--  switch (state)
--    {
--    case PW_REMOTE_STATE_ERROR:
--      g_warning ("pipewire remote error: %s\n", error_message);
--      meta_screen_cast_stream_src_notify_closed (src);
--      break;
--    case PW_REMOTE_STATE_CONNECTED:
--      pipewire_stream = create_pipewire_stream (src, &error);
--      if (!pipewire_stream)
--        {
--          g_warning ("Could not create pipewire stream: %s", error->message);
--          g_error_free (error);
--          meta_screen_cast_stream_src_notify_closed (src);
--        }
--      else
--        {
--          priv->pipewire_stream = pipewire_stream;
--        }
--      break;
--    case PW_REMOTE_STATE_UNCONNECTED:
--    case PW_REMOTE_STATE_CONNECTING:
--      break;
--    }
-+  g_warning ("pipewire remote error: id:%u %s", id, message);
-+
-+  if (id == PW_ID_CORE && res == -EPIPE)
-+    meta_screen_cast_stream_src_notify_closed (src);
- }
-
- static gboolean
-@@ -793,17 +753,6 @@ static GSourceFuncs pipewire_source_funcs =
-   pipewire_loop_source_finalize
- };
-
--static void
--init_spa_type (MetaSpaType         *type,
--               struct spa_type_map *map)
--{
--  spa_type_media_type_map (map, &type->media_type);
--  spa_type_media_subtype_map (map, &type->media_subtype);
--  spa_type_format_video_map (map, &type->format_video);
--  spa_type_video_format_map (map, &type->video_format);
--  type->meta_cursor = spa_type_map_get_id(map, SPA_TYPE_META__Cursor);
--}
--
- static MetaPipeWireSource *
- create_pipewire_source (void)
- {
-@@ -829,9 +778,9 @@ create_pipewire_source (void)
-   return pipewire_source;
- }
-
--static const struct pw_remote_events remote_events = {
--  PW_VERSION_REMOTE_EVENTS,
--  .state_changed = on_state_changed,
-+static const struct pw_core_events core_events = {
-+  PW_VERSION_CORE_EVENTS,
-+  .error = on_core_error,
- };
-
- static gboolean
-@@ -851,37 +800,31 @@ meta_screen_cast_stream_src_initable_init (GInitable     *initable,
-       return FALSE;
-     }
-
--  priv->pipewire_core = pw_core_new (priv->pipewire_source->pipewire_loop,
--                                     NULL);
--  if (!priv->pipewire_core)
-+  priv->pipewire_context = pw_context_new (priv->pipewire_source->pipewire_loop,
-+                                           NULL, 0);
-+  if (!priv->pipewire_context)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Failed to create pipewire core");
-+                   "Failed to create pipewire context");
-       return FALSE;
-     }
-
--  priv->pipewire_remote = pw_remote_new (priv->pipewire_core, NULL, 0);
--  if (!priv->pipewire_remote)
-+  priv->pipewire_core = pw_context_connect (priv->pipewire_context, NULL, 0);
-+  if (!priv->pipewire_core)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't creat pipewire remote");
-+                   "Couldn't connect pipewire context");
-       return FALSE;
-     }
-
--  pw_remote_add_listener (priv->pipewire_remote,
--                          &priv->pipewire_remote_listener,
--                          &remote_events,
--                          src);
-+  pw_core_add_listener (priv->pipewire_core,
-+                        &priv->pipewire_core_listener,
-+                        &core_events,
-+                        src);
-
--  priv->pipewire_type = pw_core_get_type (priv->pipewire_core);
--  init_spa_type (&priv->spa_type, priv->pipewire_type->map);
--
--  if (pw_remote_connect (priv->pipewire_remote) != 0)
--    {
--      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't connect pipewire remote");
--      return FALSE;
--    }
-+  priv->pipewire_stream = create_pipewire_stream (src, error);
-+  if (!priv->pipewire_stream)
-+    return FALSE;
-
-   return TRUE;
- }
-@@ -912,8 +855,8 @@ meta_screen_cast_stream_src_finalize (GObject *object)
-     meta_screen_cast_stream_src_disable (src);
-
-   g_clear_pointer (&priv->pipewire_stream, pw_stream_destroy);
--  g_clear_pointer (&priv->pipewire_remote, pw_remote_destroy);
--  g_clear_pointer (&priv->pipewire_core, pw_core_destroy);
-+  g_clear_pointer (&priv->pipewire_core, pw_core_disconnect);
-+  g_clear_pointer (&priv->pipewire_context, pw_context_destroy);
-   g_source_destroy (&priv->pipewire_source->base);
-
-   G_OBJECT_CLASS (meta_screen_cast_stream_src_parent_class)->finalize (object);
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 806a3bef9f0..132cd9dd645 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,35 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=3
+version=3.36.3
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+ -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland
+ -Dxwayland_initfd=disabled"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 79c6df47e8129003c03afc07a531f219fd52d680 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:38 +0600
Subject: [PATCH 39/63] gnome-shell: update to 3.36.3.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..ee4c6288f5f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb

From 41464024d12bec71382ad1fe1d44cd3d3d1a8da1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:46 +0600
Subject: [PATCH 40/63] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 2fe2576560ac0a3e180497c96d3b2df2db2abf86 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:53 +0600
Subject: [PATCH 41/63] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..16bc43fd0e7 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -13,15 +13,15 @@ configure_args="$(vopt_enable gir introspection)
 hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
-depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+depends="gnome-settings-daemon gnome-shell gnome-session gnome-themes-extra
+ gsettings-desktop-schemas xorg-server xorg-server-xwayland xrdb"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From c322a811164eeede07dcb1de5e515112f5940c63 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:00 +0600
Subject: [PATCH 42/63] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 5477a0cf61a2cbb172fdef53eacb9b3a4c23492b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:07 +0600
Subject: [PATCH 43/63] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 16341b45cc23adfde066aeacadf33a2b73618500 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:14 +0600
Subject: [PATCH 44/63] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From e4192484b569b450974583e14ae1bce2d361c5b8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:21 +0600
Subject: [PATCH 45/63] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 7d2c230b2f25f1ad1f336476750045baf0fe8b77 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:28 +0600
Subject: [PATCH 46/63] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 3224382119731d03a3c10a3f3655fbf31a371f15 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:36 +0600
Subject: [PATCH 47/63] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 31a59da39e7e3ac11eaff4b0b23c245ae2865704 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:46 +0600
Subject: [PATCH 48/63] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From bd332833706972ac0517b0eca8cc9f9b414aaa3c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:54 +0600
Subject: [PATCH 49/63] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 2e8c6373fb653959cd63119353a19570e28c6ec0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:01 +0600
Subject: [PATCH 50/63] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 0c883f94c1291efd3a890a7043abbc742942061e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:09 +0600
Subject: [PATCH 51/63] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 5b2b554f351cbd6c4183eb4d057209a7f65a6a71 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:16 +0600
Subject: [PATCH 52/63] lutris: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index c3c47392ff6..7ee74cc7990 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From 33546021d38f4f9f7e4808b34d67a4d0698e65a8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 16 Jun 2020 22:56:53 +0700
Subject: [PATCH 53/63] gnome-desktop: add do_check

---
 srcpkgs/gnome-desktop/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index c1a7408c207..ccd7c56569a 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -11,6 +11,7 @@ makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
  libxkbfile-devel libXrandr-devel gdk-pixbuf-devel"
 depends="bubblewrap gsettings-desktop-schemas iso-codes xkeyboard-config"
+checkdepends="$depends xorg-server-xvfb"
 short_desc="GNOME desktop management utilities"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
@@ -21,6 +22,22 @@ checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 build_options="gir"
 build_options_default="gir"
 
+do_check() {
+	# there is still 1 test fail for he_IL locale in musl
+	if test "$XBPS_TARGET_LIBC" != musl; then
+		local _pid
+		Xvfb :1 -screen 0 1366x768x24 &
+		_pid=$!
+		trap "kill $_pid" EXIT
+		trap 'exit 1' INT HUP TERM
+		export DISPLAY=:1
+		ninja -C build test
+		trap - EXIT INT HUP TERM
+		kill $_pid
+	fi
+}
+
+
 gnome-desktop-devel_package() {
 	depends="gtk+3-devel gsettings-desktop-schemas-devel>=3.12
 	 gdk-pixbuf-devel iso-codes libX11-devel libglib-devel libseccomp-devel

From c88c0204ed6dbab9552806a0b7298d0744ea9be2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 06:25:55 +0700
Subject: [PATCH 54/63] gnome-settings-daemon: fix checkdepends

---
 srcpkgs/gnome-settings-daemon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index 9ceb1d13de9..f4539a72d43 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -12,7 +12,7 @@ makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-dev
  xf86-input-wacom-devel"
 depends="hicolor-icon-theme pulseaudio"
 checkdepends="elogind libnotify python3-dbusmock python3-gobject
- python3-pycodestyle"
+ python3-pycodestyle which hwids eudev"
 short_desc="GNOME settings daemon"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"

From 596be74f509967d3cf46ee4f7ce2b82ebd427a17 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 07:44:12 +0700
Subject: [PATCH 55/63] mutter: skip do_check

---
 srcpkgs/mutter/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 132cd9dd645..117b59a29a9 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -22,6 +22,10 @@ checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
 shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
  libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
+do_check() {
+	msg_warn "xvfb does not work\n"
+}
+
 mutter-devel_package() {
 	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
 	 libX11-devel libXtst-devel mutter-${version}_${revision}"

From 8e11136fcaf46da521fb545493e29f4b16eb5d0d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 21 Jun 2020 22:53:03 +0700
Subject: [PATCH 56/63] evolution-data-server: split vala build option from gir

---
 srcpkgs/evolution-data-server/template | 54 ++++++++++++--------------
 1 file changed, 25 insertions(+), 29 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index ebf8145f88c..822d59e6922 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -2,45 +2,38 @@
 pkgname=evolution-data-server
 version=3.36.3
 revision=1
+_basever=${version%.*}
 build_style=cmake
-build_helper=gir
+build_helper="gir qemu"
 configure_args="-DENABLE_UOA=OFF
- $(vopt_if gir '-DENABLE_INTROSPECTION=ON -DENABLE_VALA_BINDINGS=ON' '-DENABLE_WEATHER=OFF')"
+ $(vopt_if gir -DENABLE_INTROSPECTION=ON)
+ $(vopt_if vala -DENABLE_VALA_BINDINGS=ON)"
 hostmakedepends="flex glib-devel gperf intltool pkg-config libglib-devel
- $(vopt_if gir 'gobject-introspection')"
-makedepends="boost-devel libcanberra-devel libgdata-devel $(vopt_if gir libgweather-devel)
- libical-devel libsecret-devel mit-krb5-devel $(vopt_if gir 'vala-devel') webkit2gtk-devel"
-depends="$(vopt_if gir libgweather) libsoup-gnome"
+ $(vopt_if vala vala)"
+makedepends="boost-devel libcanberra-devel libgdata-devel libical-devel
+ libsecret-devel mit-krb5-devel webkit2gtk-devel libgweather-devel
+ $(vopt_if vala vala-devel)"
+depends="libgweather libsoup-gnome dbus tzdata"
+checkdepends="$depends"
 short_desc="Centralized access to appointments and contacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
-changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
-distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+changelog="https://raw.githubusercontent.com/GNOME/$pkgname/gnome-${_basever/./-}/NEWS"
+distfiles="${GNOME_SITE}/${pkgname}/${_basever}/${pkgname}-${version}.tar.xz"
 checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
-build_options="gir"
-if [ -z "$CROSS_BUILD" ]; then
-	build_options_default="gir"
-fi
+build_options="gir vala"
+build_options_default="gir vala"
 
-# cmake perfomrms 2 checks using binary runtime, about iconv and sfrtime.
-# musl (1.1.16) does not support "ISO-2022-JP" encoding (see its roadmap),
-# although evolution-data-server is fine with musl.
-# If crossbuild, cmake let disabling runtime checks via specific directives.
-# test iconv-detect.c also generates iconv-detect.h that is required for build.
-# So completly disable test from iconv-detect.c (cmake.patch file) and
-# use a cmake cache file on crossbuild to disable sfrtime running test.
-if [ "$CROSS_BUILD" ]; then
-	configure_args+=" -C disableRuntimeTests.cmake"
-fi
-
-pre_configure() {
-	mkdir -p build
-	cp ${FILESDIR}/iconv-detect.h ${wrksrc}/build/.
-	if [ "$CROSS_BUILD" ]; then
-		cp ${FILESDIR}/disableRuntimeTests.cmake ${wrksrc}/build/.
-	fi
+do_check() {
+	cd build
+	# TODO This test is problematic, first run usually fail
+	# Signify something wrong with evolution-data-server on first run
+	ctest -R test-book-client-custom-summary || true
+	# make test run ctest --force-new-ctest-process which is problematic
+	# noone should run multiple instance of evolution-data-server irl.
+	ctest
 }
 
 post_install() {
@@ -49,6 +42,7 @@ post_install() {
 
 evolution-data-server-devel_package() {
 	depends="sqlite-devel mit-krb5-devel nss-devel nspr-devel libical-devel
+
 		libldap-devel libgdata-devel>=0.15 libsecret-devel libglib-devel
 		libsoup-devel gtk+3-devel libxml2-devel gnome-desktop-devel
 		${sourcepkg}>=${version}_${revision}"
@@ -59,6 +53,8 @@ evolution-data-server-devel_package() {
 		vmove "usr/lib/*.so"
 		if [ "$build_option_gir" ]; then
 			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
 			vmove usr/share/vala
 		fi
 	}

From 90e1dacff5d4af9ce28d0a2606acd55094cf3202 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:51:31 +0700
Subject: [PATCH 57/63] folks: add build option gir and vala

Disable gir and vala in evolution-data-server will make folks failed to
be built.

Either enable both of them, or disable both of them.
---
 srcpkgs/folks/template | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index e21ca9c1077..6dabeadafaf 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -5,10 +5,11 @@ revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Db_lto=false"
-hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
- gobject-introspection evolution-data-server-devel"
+hostmakedepends="pkg-config intltool glib-devel python3 python3-dbusmock
+ evolution-data-server-devel $(vopt_if vala vala)"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
- libgee08-devel evolution-data-server-devel tracker-devel"
+ libgee08-devel evolution-data-server-devel tracker-devel
+ $(vopt_if vala vala-devel)"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
@@ -17,6 +18,9 @@ homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
+build_options="gir vala"
+build_options_default="gir vala"
+
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
@@ -24,7 +28,11 @@ folks-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove "usr/lib/*.so"
-		vmove usr/share/vala
-		vmove usr/share/gir-1.0
+		if [ "$build_option_gir" ]; then
+			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
+			vmove usr/share/vala
+		fi
 	}
 }

From ed249781a9339b586d83d8ad0a6869d43f4b4941 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:52:50 +0700
Subject: [PATCH 58/63] nautilus: correct checkdepends

---
 srcpkgs/nautilus/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 94cb10492ca..c6faf7bf3d7 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -11,7 +11,7 @@ makedepends="exempi-devel gnome-autoar-devel gnome-desktop-devel gtk+3-devel
  libX11-devel libxml2-devel tracker-devel gst-plugins-base1-devel"
 depends="desktop-file-utils gsettings-desktop-schemas hicolor-icon-theme
  tracker-miners tracker"
-checkdepends="tracker"
+checkdepends="tracker tracker-miners"
 short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"

From 9f943906d0813ec3de1401606f1b3aa9a3672fa5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:53:14 +0700
Subject: [PATCH 59/63] tracker: add tar to checkdepends

---
 srcpkgs/tracker/template | 1 +
 1 file changed, 1 insertion(+)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index e814f77c711..19338db45e1 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -11,6 +11,7 @@ hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
+checkdepends="tar"
 short_desc="Personal search tool and storage system"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"

From 37f1c6be9bb5e225a5f12d1c41eb76613c078f99 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:53:55 +0700
Subject: [PATCH 60/63] tracker-miners: simplify template

---
 srcpkgs/tracker-miners/template | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/tracker-miners/template b/srcpkgs/tracker-miners/template
index 020c124f322..a5ad65d7441 100644
--- a/srcpkgs/tracker-miners/template
+++ b/srcpkgs/tracker-miners/template
@@ -3,6 +3,7 @@ pkgname=tracker-miners
 version=2.3.1
 revision=3
 build_style=meson
+# Missing libgrss
 configure_args="-Dtracker_core=system -Ddocs=false -Dextract=true
  -Dfunctional_tests=false -Dcue=enabled -Dexif=enabled -Dflac=enabled
  -Dgif=enabled -Dgsf=enabled -Diptc=enabled -Diso=enabled -Djpeg=enabled
@@ -17,14 +18,10 @@ makedepends="tracker-devel ffmpeg-devel dbus-devel exempi-devel libflac-devel
  libexif-devel libgsf-devel libgxps-devel libiptcdata-devel libjpeg-turbo-devel
  libosinfo-devel libpng-devel libseccomp-devel tiff-devel libxml2-devel
  libvorbis-devel poppler-glib-devel taglib-devel totem-pl-parser-devel
- upower-devel zlib-devel gst-plugins-base1-devel giflib-devel"
+ upower-devel zlib-devel gst-plugins-base1-devel giflib-devel libharfbuzz"
 short_desc="Data miners for tracker"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://developer.gnome.org/libtracker-miner/stable"
 distfiles="${GNOME_SITE}/tracker-miners/${version%.*}/tracker-miners-${version}.tar.xz"
 checksum=7b1de06a7a79ea1c7813c8a21f8cd1c55f2b95f799cf9f47f0204f3be8a590e0
-
-# Missing libgrss
-configure_args+=" -Dminer_rss=false"
-makedepends+=" libharfbuzz"

From 264f4ac2bdc209ca3ae76730f99a59f24203431e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 24 Jun 2020 23:18:40 +0700
Subject: [PATCH 61/63] gnome-shell: add do_check

---
 srcpkgs/gnome-shell/template | 17 +++++++++++++++++
 srcpkgs/libgweather/template |  2 +-
 2 files changed, 18 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index ee4c6288f5f..deb922a09ad 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -15,6 +15,7 @@ makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  network-manager-applet-devel polkit-devel pulseaudio-devel
  startup-notification-devel telepathy-logger-devel gnome-autoar-devel"
 depends="caribou elogind glxinfo gnome-control-center gsettings-desktop-schemas upower"
+checkdepends="$depends accountsservice gdm xorg-server-xvfb pipewire mesa-dri dbus-x11"
 short_desc="GNOME core user interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
@@ -22,3 +23,19 @@ homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb
+
+do_check() {
+	local _pid
+	export DISPLAY=:1
+	export XDG_RUNTIME_DIR=/tmp
+	Xvfb :1 -screen 0 1366x768x24 &
+	_pid=$!
+	trap "kill $_pid" EXIT
+	trap 'exit 1' INT HUP TERM
+	eval $(dbus-launch)
+	export DBUS_SESSION_BUS_ADDRESS
+	ninja test -C build
+	# trap is hanging on normal exit, dbus?
+	trap - EXIT INT HUP TERM
+	kill $_pid || true
+}
diff --git a/srcpkgs/libgweather/template b/srcpkgs/libgweather/template
index d862170cc4e..ec3976562d8 100644
--- a/srcpkgs/libgweather/template
+++ b/srcpkgs/libgweather/template
@@ -5,7 +5,7 @@ revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Denable_vala=$(vopt_if vala true false)
- -Dintrospection=$(vopt_if gir true false) -Dtest=false
+ -Dintrospection=$(vopt_if gir true false)
  -Dzoneinfo_dir=/usr/share/zoneinfo"
 hostmakedepends="glib-devel intltool pkg-config $(vopt_if vala vala)"
 makedepends="geocode-glib-devel gtk+3-devel libsoup-gnome-devel"

From f1963908da2bf0a3724ab121d81b0a19b422606d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 21 Jun 2020 15:54:46 +0700
Subject: [PATCH 62/63] common/shlibs: fix for libhidrd_item.so.0

---
 common/shlibs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/common/shlibs b/common/shlibs
index 23e0c8f685a..7947970373f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3972,7 +3972,7 @@ libjpegxr.so.0 jxrlib-0.2.2_1
 libjxrglue.so.0 jxrlib-0.2.2_1
 libhidrd_util.so.0 hidrd-0.2.0_1
 libhidrd_usage.so.0 hidrd-0.2.0_1
-libhidrd_item.so.0
+libhidrd_item.so.0 hidrd-0.2.0_1
 libhidrd_opt.so.0 hidrd-0.2.0_1
 libhidrd_strm.so.0 hidrd-0.2.0_1
 libhidrd_fmt.so.0 hidrd-0.2.0_1

From f007f8cc159d0331a052806190fc0b65e98b03b1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Thu, 2 Jul 2020 09:17:31 +0700
Subject: [PATCH 63/63] fixup! evolution-data-server: split vala build option
 from gir

[ci skip]
---
 srcpkgs/evolution-data-server/template | 42 +++++++++++++++++++++++++-
 1 file changed, 41 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 822d59e6922..9ff77903f4e 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -26,6 +26,47 @@ checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 build_options="gir vala"
 build_options_default="gir vala"
 
+pre_build() {
+	[ -z "$CROSS_BUILD" ] && return
+	local _dir=
+	for _dir in libebackend libedataserver libedataserverui \
+		addressbook/libebook-contacts \
+		addressbook/libedata-book \
+		addressbook/libebook \
+		calendar/libecal \
+		calendar/libedata-cal
+	do
+		ln -rsf $wrksrc/build/src/private/libedbus-private.so build/src/$_dir
+	done
+
+	for _dir in addressbook/libebook-contacts \
+		calendar/libecal calendar/libedata-cal
+	do
+		ln -sf ../../camel/libcamel-1.2.so.62 build/src/$_dir
+	done
+
+	for _dir in addressbook/libedata-book addressbook/libebook \
+		calendar/libedata-cal
+	do
+		ln -sf ../../libebackend/libebackend-1.2.so.10 build/src/$_dir
+	done
+
+	ln -sf ../../libedataserver/libedataserver-1.2.so.24 build/src/calendar/libecal
+	return
+	# ideally qemu should pick below LD_LIBARY_PATH
+	# instead of above shenanigans
+	# But it doesn't work for now, left it here as future reference.
+	# TODO figure a better methods
+	_builddir=$wrksrc/build
+	_ld_library_path=$_builddir:$_builddir/src
+	for _dir in libedataserver private camel
+	do
+		_ld_library_path+=":$_builddir/src/$_dir"
+	done
+	_ld_library_path+=":$XBPS_CROSS_BASE/usr/lib"
+	export QEMU_SET_ENV=LD_LIBARY_PATH=$_ld_library_path
+}
+
 do_check() {
 	cd build
 	# TODO This test is problematic, first run usually fail
@@ -42,7 +83,6 @@ post_install() {
 
 evolution-data-server-devel_package() {
 	depends="sqlite-devel mit-krb5-devel nss-devel nspr-devel libical-devel
-
 		libldap-devel libgdata-devel>=0.15 libsecret-devel libglib-devel
 		libsoup-devel gtk+3-devel libxml2-devel gnome-desktop-devel
 		${sourcepkg}>=${version}_${revision}"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (69 preceding siblings ...)
  2020-07-03 12:36 ` [PR PATCH] [Updated] " mnabid
@ 2020-07-03 12:40 ` mnabid
  2020-07-03 14:57 ` sgn
                   ` (16 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-07-03 12:40 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 990 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-653529284

Comment:
> @sgn I got errors when building `evolution-data-server` natively (`x86_64`).
> 
> ```
> -- Build files have been written to: /builddir/evolution-data-server-3.36.3/build
> => evolution-data-server-3.36.3_1: running pre-build hook: 02-script-wrapper ...
> => evolution-data-server-3.36.3_1: running pre_build ...
> => ERROR: evolution-data-server-3.36.3_1: pre_build: 'return' exited with 1
> => ERROR:   in run_func() at common/xbps-src/shutils/common.sh:21
> => ERROR:   in run_step() at common/xbps-src/shutils/common.sh:48
> => ERROR:   in main() at common/xbps-src/libexec/xbps-src-dobuild.sh:34
> ```
> 
> [Travis log](https://travis-ci.org/github/void-linux/void-packages/jobs/704165158#L2794) shows the same.

Never mind, I took care of it. 
Removed `nocross` from `gnome-maps`, as `evolution-data-server` cross GIR works now.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (70 preceding siblings ...)
  2020-07-03 12:40 ` mnabid
@ 2020-07-03 14:57 ` sgn
  2020-07-03 15:04 ` [PR PATCH] [Updated] " mnabid
                   ` (15 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: sgn @ 2020-07-03 14:57 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 184 bytes --]

New comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-653585224

Comment:
@mnabid explicit `return 0` should be better :)

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (71 preceding siblings ...)
  2020-07-03 14:57 ` sgn
@ 2020-07-03 15:04 ` mnabid
  2020-07-03 15:06 ` mnabid
                   ` (14 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-07-03 15:04 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1836 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

gnome 3.36 updates
<details>
<summary><i>List of updates : </i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.3
 * evolution -> 3.36.3
 * evolution-data-server -> 3.36.3
 * evolution-ews -> 3.36.3
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.3
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.3
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.3
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.3
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.3
 * nautilus -> 3.36.3
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * python3-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built natively in `x86_64` and crossbuilt for `armv7l`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 762615 bytes --]

From 9834a3b20d713a47abb487a170f3ca19a53585dc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:42:53 +0600
Subject: [PATCH 01/63] gnome-desktop: update to 3.36.2.

Closes: #21382
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 878ca5a5ac6..4277a983cef 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1182,7 +1182,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 02aed09ae7afa616236f48bcaf81ef622d138d80 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:18 +0600
Subject: [PATCH 02/63] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 5888443c1d41b613627cb185e60560975ee4049b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:25 +0600
Subject: [PATCH 03/63] nautilus: update to 3.36.3.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..94cb10492ca 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=b6cafc7ab1e70a64383de391b6097fcccbf36b208f8502d8c46423224fd30ef8
 
 build_options="gir"
 build_options_default="gir"

From 85b61751bdcfb4e00019de0c0e58cadca6f7219e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:32 +0600
Subject: [PATCH 04/63] gnome-music: update to 3.36.3.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..2273ac1ca16 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.3
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=54f8d240f8995f4cff4dce5e1cbdc60befc81d79bf72c1e4fd807ed05c114237
 lib32disabled=yes

From 2d50eeb10e98c52a68021a05eef0a4552f27b995 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:38 +0600
Subject: [PATCH 05/63] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 0920de4c3169fa97e5f539874555904996a09352 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:51 +0600
Subject: [PATCH 06/63] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index e4cacb7079e..cfa1cf57594 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From f33c73b6e51b3a8a7f001692d2ef3c688f81cbac Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:59 +0600
Subject: [PATCH 07/63] evince: update to 3.36.3.

---
 srcpkgs/evince/template | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..fe405048f44 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,14 +1,14 @@
 # Template file for 'evince'
 pkgname=evince
-version=3.36.0
+version=3.36.3
 revision=1
 build_helper="gir"
-build_style=gnu-configure
-configure_args="$(vopt_enable gir introspection) --disable-schemas-compile
- --enable-comics --disable-static --enable-xps --disable-t1lib
- --disable-browser-plugin --enable-ps"
+build_style=meson
+configure_args="-Dcomics=enabled -Dxps=enabled -Dt1lib=enabled -Dbrowser_plugin=true
+ -Dps=enabled -Ddvi=disabled -Dintrospection=$(vopt_if gir true false)
+ -Dgtk_doc=$(vopt_if gtk_doc true false)"
 hostmakedepends="adwaita-icon-theme gettext glib-devel gnome-doc-utils
- itstool pkg-config perl-XML-Parser appstream-glib"
+ itstool pkg-config perl-XML-Parser appstream-glib $(vopt_if gtk_doc gtk-doc)"
 # XXX missing packages for DVI backend.
 makedepends="adwaita-icon-theme djvulibre-devel gnome-desktop-devel libSM-devel
  libgxps-devel libsecret-devel libspectre-devel nautilus-devel
@@ -19,9 +19,9 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evince"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=851d9b5234d479ab4c8f7c5cbaceb0e91ad79ccba1a7b733cde72dacc928fba8
+checksum=af2ebdf7f74e6580c4f1a12bdfe26b9ff90374d7acae061de0666d64012a9db2
 
-build_options="gir"
+build_options="gir gtk_doc"
 build_options_default="gir"
 
 libevince_package() {
@@ -41,7 +41,9 @@ evince-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove "usr/lib/*.so"
-		vmove usr/share/gtk-doc
+		if [ "$build_option_gtk_doc" ]; then
+			vmove usr/share/gtk-doc
+		fi
 		if [ "$build_option_gir" ]; then
 			vmove usr/share/gir-1.0
 		fi

From d9f4c8269c90be77e2ecb7442645cca9d7497e56 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:07 +0600
Subject: [PATCH 08/63] gnome-maps: update to 3.36.2.

... and unmark nocross.
---
 common/shlibs               | 1 +
 srcpkgs/gnome-maps/template | 8 ++++----
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 4277a983cef..7c71fc4ab9f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -622,6 +622,7 @@ libcanberra-gtk3.so.0 libcanberra-gtk3-0.30_6
 libgtop-2.0.so.11 libgtop-2.38.0_1
 librarian.so.0 rarian-0.8.1_1
 libmusikcore.so musikcube-0.60.1_1
+libgnome-maps.so.0 gnome-maps-3.36.2_1
 libgnome-menu-3.so.0 gnome-menus-2.91.6_1
 libart_lgpl_2.so.2 libart-2.3.20_1
 libgnomecanvas-2.so.0 libgnomecanvas-2.30.1_1
diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..a67d84f4396 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,9 +1,10 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
+build_helper="gir"
+hostmakedepends="glib-devel gjs-devel intltool pkg-config AppStream"
 makedepends="folks-devel geoclue2-devel geocode-glib-devel gjs-devel
  gnome-desktop-devel libchamplain-devel rest-devel"
 depends="geoclue2 gfbgraph gjs"
@@ -12,5 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
-nocross="evolution-dataserver cross gir doesn't work"
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784

From 087a1556641e5fc9138f8f84e0c1a6d3945d5720 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:14 +0600
Subject: [PATCH 09/63] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From b6b9872ca655d8c39f4db990e52f6473e35ab7e3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:21 +0600
Subject: [PATCH 10/63] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From e90c0c60ea4682ded9711045783097a048db6f1e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:29 +0600
Subject: [PATCH 11/63] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From 86acc60e1cb11b2293f4c822ec5a3c5f29342e1c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:36 +0600
Subject: [PATCH 12/63] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 74239200301004fdb3087a8e44dc2d0d6afd0654 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:44 +0600
Subject: [PATCH 13/63] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 1414cfb2cf8d1b233b88184be85237fb690d1640 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:52 +0600
Subject: [PATCH 14/63] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From b038f6f4b4005336e4157a60712670c9dec0f4e0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:01 +0600
Subject: [PATCH 15/63] gnome-control-center: update to 3.36.3.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..53a555525b4 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=bc174d970dbeca3ee19c26019de31e9edf78dc9c4abde16e763566ee38c3691c
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 29e138f3c4a870ea6f8080da3ea6a0e971fd7668 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:08 +0600
Subject: [PATCH 16/63] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 5e1b29f4e038b74847a6be5702e790ab2a32e928 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:27 +0600
Subject: [PATCH 17/63] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 077759f0313ffff97974677c3ebb2cad33a6b221 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:36 +0600
Subject: [PATCH 18/63] gnome-initial-setup: update to 3.36.3.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..caa33c2695e 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.3
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=d8a933f8c822cc293cc10b532779f8562342ae2271b929879e8f108491f4c285

From 0ed47ff71c2f64e15b389efcad5de9ffe0eaad66 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:43 +0600
Subject: [PATCH 19/63] evolution-data-server: update to 3.36.3.

---
 srcpkgs/evolution-data-server/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 4ae820be068..ebf8145f88c 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,7 +1,7 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
-revision=2
+version=3.36.3
+revision=1
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 3f8f110e025b41117625df73c75afaf762022222 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:56 +0600
Subject: [PATCH 20/63] evolution: update to 3.36.3.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..d95c07eb72c 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=54e16caa286c02d4fe94b43e33abf5cd6f3a1502181bb8cf557aadc886b5ca03
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 2888033e78e3b04affcc26423775f37eaec9d8d2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:04 +0600
Subject: [PATCH 21/63] evolution-ews: update to 3.36.3.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..38fd62d39e1 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=7a97a59b10f7a48a3bcf6d476c6a2c068ec5c48c546a433812691b8301752d04

From 0ba1412aa48159d27db6b1b3ba7f613c2082abd8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:11 +0600
Subject: [PATCH 22/63] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 5890af3889be44a1839161e90e67560425d3d054 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:19 +0600
Subject: [PATCH 23/63] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From b70800b0fbce9470bbaa09bb0b6c140ee7e80554 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:26 +0600
Subject: [PATCH 24/63] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From ea26880001ab38a9233d55a86bbb17c6c723eec2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:41 +0600
Subject: [PATCH 25/63] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index 0141d97f85d..4881056ad76 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,8 +1,8 @@
 # Template file for 'python-atspi'
 # Keep python3-atspi in sync
 pkgname=python-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From 7c94f4cc8a7d9939d225bb9e62048c1cfbda051d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:48 +0600
Subject: [PATCH 26/63] python3-atspi: update to 2.36.0.

---
 srcpkgs/python3-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-atspi/template b/srcpkgs/python3-atspi/template
index a33a374fe18..b2360822acf 100644
--- a/srcpkgs/python3-atspi/template
+++ b/srcpkgs/python3-atspi/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-atspi'
 pkgname=python3-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From 7e5bd32ad49b2637039314a5f643c6326e47cb10 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:56 +0600
Subject: [PATCH 27/63] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 7c71fc4ab9f..5fc34e2c030 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -839,9 +839,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From bf66e2f4873246c0b836a3a36f7224da3ca6af61 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:03 +0600
Subject: [PATCH 28/63] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 8fab1b92e7136539695e91e8c57cb12130f86997 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:10 +0600
Subject: [PATCH 29/63] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..10ab8d79264 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,13 +1,13 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
+hostmakedepends="gettext docbook-xsl glib-devel libxslt pkg-config vala"
 makedepends="dconf-devel gtk+3-devel"
 short_desc="Low-level configuration system - GTK+ editor"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From e9168a90ba77c614835b3b22afcbc419ef83ffd6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:16 +0600
Subject: [PATCH 30/63] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 37074cb348d..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
-revision=2
+version=2.3.4
+revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 40fd1c1f23841fe9d87943af9c5515ae78c3f040 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:23 +0600
Subject: [PATCH 31/63] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From cc74fc244ece53f241e364da3ca892bbbaa6eca9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:39 +0600
Subject: [PATCH 32/63] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 6663798218c39e290cd48b3fc484fdbe0f307893 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:47 +0600
Subject: [PATCH 33/63] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 5fc34e2c030..cbf3ea17531 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -570,7 +570,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From ea90e1c128b1c9ff9d771633d1ba67c234bfe595 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:54 +0600
Subject: [PATCH 34/63] metacity: update to 3.36.1.

---
 common/shlibs                                 |  1 +
 .../patches/compositor-vulkan-fix-build.patch | 29 +++++++++++++++++++
 srcpkgs/metacity/template                     |  4 +--
 3 files changed, 32 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch

diff --git a/common/shlibs b/common/shlibs
index cbf3ea17531..74086b2b98b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -572,6 +572,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
new file mode 100644
index 00000000000..960582ded7d
--- /dev/null
+++ b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
@@ -0,0 +1,29 @@
+From 99361f28c8763ea4569b5ae9876028d53ac9a234 Mon Sep 17 00:00:00 2001
+From: Alberts Muktupāvels <alberts.muktupavels@gmail.com>
+Date: Sun, 24 May 2020 13:58:51 +0300
+Subject: [PATCH] compositor-vulkan: fix build
+
+VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE enum was removed in 1.2.140.
+
+https://gitlab.gnome.org/GNOME/metacity/-/issues/10
+---
+ src/compositor/meta-compositor-vulkan.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git src/compositor/meta-compositor-vulkan.c src/compositor/meta-compositor-vulkan.c
+index b87b5194..53b7b3ff 100644
+--- src/compositor/meta-compositor-vulkan.c
++++ src/compositor/meta-compositor-vulkan.c
+@@ -810,7 +810,9 @@ device_type_to_string (VkPhysicalDeviceType type)
+         return "cpu";
+         break;
+ 
++#if VK_HEADER_VERSION < 140
+       case VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE:
++#endif
+       case VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM:
+       default:
+         break;
+-- 
+GitLab
+
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 7fb86fd964c..7e22aeab5c7 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,6 +1,6 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
 hostmakedepends="gettext gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From be3b073b592e601ed6ca77505976b0c802aefbbe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:01 +0600
Subject: [PATCH 35/63] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From f6813356faf0b7433f862351d6c64005ae356d89 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:09 +0600
Subject: [PATCH 36/63] gnome-flashback: update to 3.36.3.

Added PAM config to enable screen locking.
---
 .../gnome-flashback/files/gnome-flashback.pam |  6 ++++
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 27 ++++++++++++------
 3 files changed, 52 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/files/gnome-flashback.pam
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/files/gnome-flashback.pam b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
new file mode 100644
index 00000000000..ebbb51dd0e8
--- /dev/null
+++ b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth       include	system-auth
+auth       optional     pam_gnome_keyring.so
+account    include	system-auth
+password   include	system-auth
+session    include	system-auth
diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..08566df5fd4 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,29 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="gettext-devel pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vinstall ${FILESDIR}/gnome-flashback.pam 644 /etc/pam.d gnome-flashback
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 9e5a061c5c67713eba1bfe5f2f0e0467e01ae1d0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:24 +0600
Subject: [PATCH 37/63] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 69cac59332f5d389eb58aa4a76f835fd4fff2d70 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:30 +0600
Subject: [PATCH 38/63] mutter: update to 3.36.3.

---
 common/shlibs                                 |  18 +-
 .../patches/fix-cogl-egl-includes.patch       |  11 -
 srcpkgs/mutter/patches/pipewire-0.3.patch     | 521 ------------------
 srcpkgs/mutter/template                       |  27 +-
 4 files changed, 23 insertions(+), 554 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
 delete mode 100644 srcpkgs/mutter/patches/pipewire-0.3.patch

diff --git a/common/shlibs b/common/shlibs
index 74086b2b98b..23e0c8f685a 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3022,15 +3022,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.3_1
+libmutter-clutter-6.so mutter-3.36.3_1
+libmutter-clutter-6.so.0 mutter-3.36.3_1
+libmutter-cogl-path-6.so mutter-3.36.3_1
+libmutter-cogl-path-6.so.0 mutter-3.36.3_1
+libmutter-cogl-6.so mutter-3.36.3_1
+libmutter-cogl-6.so.0 mutter-3.36.3_1
+libmutter-cogl-pango-6.so mutter-3.36.3_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.3_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/patches/pipewire-0.3.patch b/srcpkgs/mutter/patches/pipewire-0.3.patch
deleted file mode 100644
index ebff65fba85..00000000000
--- a/srcpkgs/mutter/patches/pipewire-0.3.patch
+++ /dev/null
@@ -1,521 +0,0 @@
-Build mutter against pipewire-0.3, based on a patch at:
-https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1062
---- meson.build
-+++ meson.build
-@@ -50,7 +50,7 @@ libinput_req = '>= 1.7'
- gbm_req = '>= 10.3'
-
- # screen cast version requirements
--libpipewire_req = '>= 0.2.5'
-+libpipewire_req = '>= 0.3.0'
-
- gnome = import('gnome')
- pkg = import('pkgconfig')
-@@ -241,7 +241,7 @@ endif
-
- have_remote_desktop = get_option('remote_desktop')
- if have_remote_desktop
--  libpipewire_dep = dependency('libpipewire-0.2', version: libpipewire_req)
-+  libpipewire_dep = dependency('libpipewire-0.3', version: libpipewire_req)
- endif
-
- have_introspection = get_option('introspection')
-diff --git a/src/backends/meta-screen-cast-stream-src.c b/src/backends/meta-screen-cast-stream-src.c
-index 82c5cba436..ba1ce94a7e 100644
---- src/backends/meta-screen-cast-stream-src.c
-+++ src/backends/meta-screen-cast-stream-src.c
-@@ -29,6 +29,7 @@
- #include <spa/param/props.h>
- #include <spa/param/format-utils.h>
- #include <spa/param/video/format-utils.h>
-+#include <spa/utils/result.h>
- #include <stdint.h>
- #include <sys/mman.h>
-
-@@ -62,15 +63,6 @@ enum
-
- static guint signals[N_SIGNALS];
-
--typedef struct _MetaSpaType
--{
--  struct spa_type_media_type media_type;
--  struct spa_type_media_subtype media_subtype;
--  struct spa_type_format_video format_video;
--  struct spa_type_video_format video_format;
--  uint32_t meta_cursor;
--} MetaSpaType;
--
- typedef struct _MetaPipeWireSource
- {
-   GSource base;
-@@ -82,19 +74,19 @@ typedef struct _MetaScreenCastStreamSrcPrivate
- {
-   MetaScreenCastStream *stream;
-
-+  struct pw_context *pipewire_context;
-   struct pw_core *pipewire_core;
--  struct pw_remote *pipewire_remote;
--  struct pw_type *pipewire_type;
-   MetaPipeWireSource *pipewire_source;
--  struct spa_hook pipewire_remote_listener;
-+  struct spa_hook pipewire_core_listener;
-
-   gboolean is_enabled;
-
-   struct pw_stream *pipewire_stream;
-   struct spa_hook pipewire_stream_listener;
-+  uint32_t node_id;
-
--  MetaSpaType spa_type;
-   struct spa_video_info_raw video_format;
-+  int video_stride;
-
-   uint64_t last_frame_timestamp_us;
-
-@@ -112,8 +104,6 @@ G_DEFINE_TYPE_WITH_CODE (MetaScreenCastStreamSrc,
-                                                 meta_screen_cast_stream_src_init_initable_iface)
-                          G_ADD_PRIVATE (MetaScreenCastStreamSrc))
-
--#define PROP_RANGE(min, max) 2, (min), (max)
--
- static void
- meta_screen_cast_stream_src_get_specs (MetaScreenCastStreamSrc *src,
-                                        int                     *width,
-@@ -286,9 +276,6 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-                                                               int                      x,
-                                                               int                      y)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-
-   spa_meta_cursor->id = 1;
-@@ -300,7 +287,7 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   spa_meta_cursor->hotspot.x = 0;
-@@ -317,9 +304,6 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-                                                         int                      y,
-                                                         float                    scale)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   CoglTexture *cursor_texture;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-   int hotspot_x, hotspot_y;
-@@ -346,7 +330,7 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   meta_cursor_sprite_get_hotspot (cursor_sprite, &hotspot_x, &hotspot_y);
-@@ -382,12 +366,10 @@ static void
- add_cursor_metadata (MetaScreenCastStreamSrc *src,
-                      struct spa_buffer       *spa_buffer)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_cursor *spa_meta_cursor;
-
--  spa_meta_cursor = spa_buffer_find_meta (spa_buffer, spa_type->meta_cursor);
-+  spa_meta_cursor = spa_buffer_find_meta_data (spa_buffer, SPA_META_Cursor,
-+                                               sizeof (*spa_meta_cursor));
-   if (spa_meta_cursor)
-     meta_screen_cast_stream_src_set_cursor_metadata (src, spa_meta_cursor);
- }
-@@ -447,14 +429,14 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-     {
-       data = spa_buffer->datas[0].data;
-     }
--  else if (spa_buffer->datas[0].type == priv->pipewire_type->data.MemFd)
-+  else if (spa_buffer->datas[0].type == SPA_DATA_MemFd)
-     {
-       map = mmap (NULL, spa_buffer->datas[0].maxsize + spa_buffer->datas[0].mapoffset,
-                   PROT_READ | PROT_WRITE, MAP_SHARED,
-                   spa_buffer->datas[0].fd, 0);
-       if (map == MAP_FAILED)
-         {
--          g_warning ("Failed to mmap pipewire stream buffer: %s\n",
-+          g_warning ("Failed to mmap pipewire stream buffer: %s",
-                      strerror (errno));
-           return;
-         }
-@@ -469,28 +451,30 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-
-   if (meta_screen_cast_stream_src_record_frame (src, data))
-     {
--      struct spa_meta_video_crop *spa_meta_video_crop;
-+      struct spa_meta_region *spa_meta_video_crop;
-
-       spa_buffer->datas[0].chunk->size = spa_buffer->datas[0].maxsize;
-+      spa_buffer->datas[0].chunk->stride = priv->video_stride;
-
-       /* Update VideoCrop if needed */
-       spa_meta_video_crop =
--        spa_buffer_find_meta (spa_buffer, priv->pipewire_type->meta.VideoCrop);
-+        spa_buffer_find_meta_data (spa_buffer, SPA_META_VideoCrop,
-+                                   sizeof (*spa_meta_video_crop));
-       if (spa_meta_video_crop)
-         {
-           if (meta_screen_cast_stream_src_get_videocrop (src, &crop_rect))
-             {
--              spa_meta_video_crop->x = crop_rect.x;
--              spa_meta_video_crop->y = crop_rect.y;
--              spa_meta_video_crop->width = crop_rect.width;
--              spa_meta_video_crop->height = crop_rect.height;
-+              spa_meta_video_crop->region.position.x = crop_rect.x;
-+              spa_meta_video_crop->region.position.y = crop_rect.y;
-+              spa_meta_video_crop->region.size.width = crop_rect.width;
-+              spa_meta_video_crop->region.size.height = crop_rect.height;
-             }
-           else
-             {
--              spa_meta_video_crop->x = 0;
--              spa_meta_video_crop->y = 0;
--              spa_meta_video_crop->width = priv->stream_width;
--              spa_meta_video_crop->height = priv->stream_height;
-+              spa_meta_video_crop->region.position.x = 0;
-+              spa_meta_video_crop->region.position.y = 0;
-+              spa_meta_video_crop->region.size.width = priv->stream_width;
-+              spa_meta_video_crop->region.size.height = priv->stream_height;
-             }
-         }
-     }
-@@ -555,7 +539,6 @@ on_stream_state_changed (void                 *data,
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  uint32_t node_id;
-
-   switch (state)
-     {
-@@ -563,14 +546,12 @@ on_stream_state_changed (void                 *data,
-       g_warning ("pipewire stream error: %s", error_message);
-       meta_screen_cast_stream_src_notify_closed (src);
-       break;
--    case PW_STREAM_STATE_CONFIGURE:
--      node_id = pw_stream_get_node_id (priv->pipewire_stream);
--      g_signal_emit (src, signals[READY], 0, (unsigned int) node_id);
--      break;
--    case PW_STREAM_STATE_UNCONNECTED:
--    case PW_STREAM_STATE_CONNECTING:
--    case PW_STREAM_STATE_READY:
-     case PW_STREAM_STATE_PAUSED:
-+      if (priv->node_id == SPA_ID_INVALID && priv->pipewire_stream)
-+        {
-+          priv->node_id = pw_stream_get_node_id (priv->pipewire_stream);
-+          g_signal_emit (src, signals[READY], 0, (unsigned int) priv->node_id);
-+        }
-       if (meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_disable (src);
-       break;
-@@ -578,68 +559,69 @@ on_stream_state_changed (void                 *data,
-       if (!meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_enable (src);
-       break;
-+    case PW_STREAM_STATE_UNCONNECTED:
-+    case PW_STREAM_STATE_CONNECTING:
-+      break;
-     }
- }
-
- static void
--on_stream_format_changed (void                 *data,
--                          const struct spa_pod *format)
-+on_stream_param_changed (void                 *data,
-+                         uint32_t              id,
-+                         const struct spa_pod *format)
- {
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   uint8_t params_buffer[1024];
-   int32_t width, height, stride, size;
-   struct spa_pod_builder pod_builder;
-   const struct spa_pod *params[3];
-   const int bpp = 4;
-
--  if (!format)
--    {
--      pw_stream_finish_format (priv->pipewire_stream, 0, NULL, 0);
--      return;
--    }
-+  if (!format || id != SPA_PARAM_Format)
-+    return;
-
-   spa_format_video_raw_parse (format,
--                              &priv->video_format,
--                              &priv->spa_type.format_video);
-+                              &priv->video_format);
-
-   width = priv->video_format.size.width;
-   height = priv->video_format.size.height;
-   stride = SPA_ROUND_UP_N (width * bpp, 4);
-   size = height * stride;
-
-+  priv->video_stride = stride;
-+
-   pod_builder = SPA_POD_BUILDER_INIT (params_buffer, sizeof (params_buffer));
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idBuffers, pipewire_type->param_buffers.Buffers,
--    ":", pipewire_type->param_buffers.size, "i", size,
--    ":", pipewire_type->param_buffers.stride, "i", stride,
--    ":", pipewire_type->param_buffers.buffers, "iru", 16, PROP_RANGE (2, 16),
--    ":", pipewire_type->param_buffers.align, "i", 16);
--
--  params[1] = spa_pod_builder_object (
-+    SPA_TYPE_OBJECT_ParamBuffers, SPA_PARAM_Buffers,
-+    SPA_PARAM_BUFFERS_buffers, SPA_POD_CHOICE_RANGE_Int (16, 2, 16),
-+    SPA_PARAM_BUFFERS_blocks, SPA_POD_Int (1),
-+    SPA_PARAM_BUFFERS_size, SPA_POD_Int (size),
-+    SPA_PARAM_BUFFERS_stride, SPA_POD_Int (stride),
-+    SPA_PARAM_BUFFERS_align, SPA_POD_Int (16));
-+
-+  params[1] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", pipewire_type->meta.VideoCrop,
--    ":", pipewire_type->param_meta.size, "i", sizeof (struct spa_meta_video_crop));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_VideoCrop),
-+    SPA_PARAM_META_size, SPA_POD_Int (sizeof (struct spa_meta_region)));
-
--  params[2] = spa_pod_builder_object (
-+  params[2] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", priv->spa_type.meta_cursor,
--    ":", pipewire_type->param_meta.size, "i", CURSOR_META_SIZE (64, 64));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_Cursor),
-+    SPA_PARAM_META_size, SPA_POD_Int (CURSOR_META_SIZE (64, 64)));
-
--  pw_stream_finish_format (priv->pipewire_stream, 0,
--                           params, G_N_ELEMENTS (params));
-+  pw_stream_update_params (priv->pipewire_stream, params, G_N_ELEMENTS (params));
- }
-
- static const struct pw_stream_events stream_events = {
-   PW_VERSION_STREAM_EVENTS,
-   .state_changed = on_stream_state_changed,
--  .format_changed = on_stream_format_changed,
-+  .param_changed = on_stream_param_changed,
- };
-
- static struct pw_stream *
-@@ -652,8 +634,6 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   uint8_t buffer[1024];
-   struct spa_pod_builder pod_builder =
-     SPA_POD_BUILDER_INIT (buffer, sizeof (buffer));
--  MetaSpaType *spa_type = &priv->spa_type;
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   float frame_rate;
-   MetaFraction frame_rate_fraction;
-   struct spa_fraction max_framerate;
-@@ -661,7 +641,9 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   const struct spa_pod *params[1];
-   int result;
-
--  pipewire_stream = pw_stream_new (priv->pipewire_remote,
-+  priv->node_id = SPA_ID_INVALID;
-+
-+  pipewire_stream = pw_stream_new (priv->pipewire_core,
-                                    "meta-screen-cast-src",
-                                    NULL);
-   if (!pipewire_stream)
-@@ -682,17 +664,17 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   max_framerate = SPA_FRACTION (frame_rate_fraction.num,
-                                 frame_rate_fraction.denom);
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idEnumFormat, pipewire_type->spa_format,
--    "I", spa_type->media_type.video,
--    "I", spa_type->media_subtype.raw,
--    ":", spa_type->format_video.format, "I", spa_type->video_format.BGRx,
--    ":", spa_type->format_video.size, "R", &SPA_RECTANGLE (priv->stream_width,
--                                                           priv->stream_height),
--    ":", spa_type->format_video.framerate, "F", &SPA_FRACTION (0, 1),
--    ":", spa_type->format_video.max_framerate, "Fru", &max_framerate,
--                                                      PROP_RANGE (&min_framerate,
-+    SPA_TYPE_OBJECT_Format, SPA_PARAM_EnumFormat,
-+    SPA_FORMAT_mediaType, SPA_POD_Id (SPA_MEDIA_TYPE_video),
-+    SPA_FORMAT_mediaSubtype, SPA_POD_Id (SPA_MEDIA_SUBTYPE_raw),
-+    SPA_FORMAT_VIDEO_format, SPA_POD_Id (SPA_VIDEO_FORMAT_BGRx),
-+    SPA_FORMAT_VIDEO_size, SPA_POD_Rectangle (&SPA_RECTANGLE (priv->stream_width,
-+                                                              priv->stream_height)),
-+    SPA_FORMAT_VIDEO_framerate, SPA_POD_Fraction (&SPA_FRACTION (0, 1)),
-+    SPA_FORMAT_VIDEO_maxFramerate, SPA_POD_CHOICE_RANGE_Fraction (&max_framerate,
-+                                                                  &min_framerate,
-                                                                   &max_framerate));
-
-   pw_stream_add_listener (pipewire_stream,
-@@ -702,7 +684,7 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-
-   result = pw_stream_connect (pipewire_stream,
-                               PW_DIRECTION_OUTPUT,
--                              NULL,
-+                              SPA_ID_INVALID,
-                               (PW_STREAM_FLAG_DRIVER |
-                                PW_STREAM_FLAG_MAP_BUFFERS),
-                               params, G_N_ELEMENTS (params));
-@@ -717,40 +699,18 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
- }
-
- static void
--on_state_changed (void                 *data,
--                  enum pw_remote_state  old,
--                  enum pw_remote_state  state,
--                  const char           *error_message)
-+on_core_error (void       *data,
-+               uint32_t    id,
-+	       int         seq,
-+	       int         res,
-+	       const char *message)
- {
-   MetaScreenCastStreamSrc *src = data;
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_stream *pipewire_stream;
--  GError *error = NULL;
-
--  switch (state)
--    {
--    case PW_REMOTE_STATE_ERROR:
--      g_warning ("pipewire remote error: %s\n", error_message);
--      meta_screen_cast_stream_src_notify_closed (src);
--      break;
--    case PW_REMOTE_STATE_CONNECTED:
--      pipewire_stream = create_pipewire_stream (src, &error);
--      if (!pipewire_stream)
--        {
--          g_warning ("Could not create pipewire stream: %s", error->message);
--          g_error_free (error);
--          meta_screen_cast_stream_src_notify_closed (src);
--        }
--      else
--        {
--          priv->pipewire_stream = pipewire_stream;
--        }
--      break;
--    case PW_REMOTE_STATE_UNCONNECTED:
--    case PW_REMOTE_STATE_CONNECTING:
--      break;
--    }
-+  g_warning ("pipewire remote error: id:%u %s", id, message);
-+
-+  if (id == PW_ID_CORE && res == -EPIPE)
-+    meta_screen_cast_stream_src_notify_closed (src);
- }
-
- static gboolean
-@@ -793,17 +753,6 @@ static GSourceFuncs pipewire_source_funcs =
-   pipewire_loop_source_finalize
- };
-
--static void
--init_spa_type (MetaSpaType         *type,
--               struct spa_type_map *map)
--{
--  spa_type_media_type_map (map, &type->media_type);
--  spa_type_media_subtype_map (map, &type->media_subtype);
--  spa_type_format_video_map (map, &type->format_video);
--  spa_type_video_format_map (map, &type->video_format);
--  type->meta_cursor = spa_type_map_get_id(map, SPA_TYPE_META__Cursor);
--}
--
- static MetaPipeWireSource *
- create_pipewire_source (void)
- {
-@@ -829,9 +778,9 @@ create_pipewire_source (void)
-   return pipewire_source;
- }
-
--static const struct pw_remote_events remote_events = {
--  PW_VERSION_REMOTE_EVENTS,
--  .state_changed = on_state_changed,
-+static const struct pw_core_events core_events = {
-+  PW_VERSION_CORE_EVENTS,
-+  .error = on_core_error,
- };
-
- static gboolean
-@@ -851,37 +800,31 @@ meta_screen_cast_stream_src_initable_init (GInitable     *initable,
-       return FALSE;
-     }
-
--  priv->pipewire_core = pw_core_new (priv->pipewire_source->pipewire_loop,
--                                     NULL);
--  if (!priv->pipewire_core)
-+  priv->pipewire_context = pw_context_new (priv->pipewire_source->pipewire_loop,
-+                                           NULL, 0);
-+  if (!priv->pipewire_context)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Failed to create pipewire core");
-+                   "Failed to create pipewire context");
-       return FALSE;
-     }
-
--  priv->pipewire_remote = pw_remote_new (priv->pipewire_core, NULL, 0);
--  if (!priv->pipewire_remote)
-+  priv->pipewire_core = pw_context_connect (priv->pipewire_context, NULL, 0);
-+  if (!priv->pipewire_core)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't creat pipewire remote");
-+                   "Couldn't connect pipewire context");
-       return FALSE;
-     }
-
--  pw_remote_add_listener (priv->pipewire_remote,
--                          &priv->pipewire_remote_listener,
--                          &remote_events,
--                          src);
-+  pw_core_add_listener (priv->pipewire_core,
-+                        &priv->pipewire_core_listener,
-+                        &core_events,
-+                        src);
-
--  priv->pipewire_type = pw_core_get_type (priv->pipewire_core);
--  init_spa_type (&priv->spa_type, priv->pipewire_type->map);
--
--  if (pw_remote_connect (priv->pipewire_remote) != 0)
--    {
--      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't connect pipewire remote");
--      return FALSE;
--    }
-+  priv->pipewire_stream = create_pipewire_stream (src, error);
-+  if (!priv->pipewire_stream)
-+    return FALSE;
-
-   return TRUE;
- }
-@@ -912,8 +855,8 @@ meta_screen_cast_stream_src_finalize (GObject *object)
-     meta_screen_cast_stream_src_disable (src);
-
-   g_clear_pointer (&priv->pipewire_stream, pw_stream_destroy);
--  g_clear_pointer (&priv->pipewire_remote, pw_remote_destroy);
--  g_clear_pointer (&priv->pipewire_core, pw_core_destroy);
-+  g_clear_pointer (&priv->pipewire_core, pw_core_disconnect);
-+  g_clear_pointer (&priv->pipewire_context, pw_context_destroy);
-   g_source_destroy (&priv->pipewire_source->base);
-
-   G_OBJECT_CLASS (meta_screen_cast_stream_src_parent_class)->finalize (object);
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 806a3bef9f0..132cd9dd645 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,35 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=3
+version=3.36.3
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+ -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland
+ -Dxwayland_initfd=disabled"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From a4888ac717943e475496866c8aa72e97753aacd9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:38 +0600
Subject: [PATCH 39/63] gnome-shell: update to 3.36.3.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..ee4c6288f5f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb

From 5fa643b0b34e6c50fdda32f41aedc043c1ee4e7f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:46 +0600
Subject: [PATCH 40/63] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 761671c838e8832c1510878ade2584615b1fb5d5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:53 +0600
Subject: [PATCH 41/63] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..16bc43fd0e7 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -13,15 +13,15 @@ configure_args="$(vopt_enable gir introspection)
 hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
-depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+depends="gnome-settings-daemon gnome-shell gnome-session gnome-themes-extra
+ gsettings-desktop-schemas xorg-server xorg-server-xwayland xrdb"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 716795a1fd2ae92a1181ddda8e4a753a71a6d37e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:00 +0600
Subject: [PATCH 42/63] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From a799607b506aaa4b09cd7bf17af3d3fb7c73baa3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:07 +0600
Subject: [PATCH 43/63] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From ce606a83caf2ca1ed96b75894fd0167c7674a682 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:14 +0600
Subject: [PATCH 44/63] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From a2e8099419a9b7d53415282646a43da311bbc3e5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:21 +0600
Subject: [PATCH 45/63] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From e466e5cf8c3f2fbfe32e42b49b77c1128f7b356b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:28 +0600
Subject: [PATCH 46/63] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 0e0051881fe0815629d56a3628992852048a915c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:36 +0600
Subject: [PATCH 47/63] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 60cc8a9dd6eed49610798e230c4ec8a5e45a7dd6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:46 +0600
Subject: [PATCH 48/63] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 30903da98bc10b5178a806451b6c1f7805394844 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:54 +0600
Subject: [PATCH 49/63] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From fca8b2928a6c7c841105646726e9bc9abb94c9e7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:01 +0600
Subject: [PATCH 50/63] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From da71de5c72787e9450c71e057bbc66be07d24b39 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:09 +0600
Subject: [PATCH 51/63] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 6c76ac015cfbf26f7de8e024a449a602e6f46057 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:16 +0600
Subject: [PATCH 52/63] lutris: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/lutris/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/lutris/template b/srcpkgs/lutris/template
index c3c47392ff6..7ee74cc7990 100644
--- a/srcpkgs/lutris/template
+++ b/srcpkgs/lutris/template
@@ -1,7 +1,7 @@
 # Template file for 'lutris'
 pkgname=lutris
 version=0.5.6
-revision=1
+revision=2
 archs=noarch
 build_style=python3-module
 build_helper="gir"

From 0c7d16d5268950f4b307927b21a237fca14ab7a8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 16 Jun 2020 22:56:53 +0700
Subject: [PATCH 53/63] gnome-desktop: add do_check

---
 srcpkgs/gnome-desktop/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index c1a7408c207..ccd7c56569a 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -11,6 +11,7 @@ makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
  libxkbfile-devel libXrandr-devel gdk-pixbuf-devel"
 depends="bubblewrap gsettings-desktop-schemas iso-codes xkeyboard-config"
+checkdepends="$depends xorg-server-xvfb"
 short_desc="GNOME desktop management utilities"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
@@ -21,6 +22,22 @@ checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 build_options="gir"
 build_options_default="gir"
 
+do_check() {
+	# there is still 1 test fail for he_IL locale in musl
+	if test "$XBPS_TARGET_LIBC" != musl; then
+		local _pid
+		Xvfb :1 -screen 0 1366x768x24 &
+		_pid=$!
+		trap "kill $_pid" EXIT
+		trap 'exit 1' INT HUP TERM
+		export DISPLAY=:1
+		ninja -C build test
+		trap - EXIT INT HUP TERM
+		kill $_pid
+	fi
+}
+
+
 gnome-desktop-devel_package() {
 	depends="gtk+3-devel gsettings-desktop-schemas-devel>=3.12
 	 gdk-pixbuf-devel iso-codes libX11-devel libglib-devel libseccomp-devel

From dface0a2e72a5240e026b285c0d779a7a8e9ff6d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 06:25:55 +0700
Subject: [PATCH 54/63] gnome-settings-daemon: fix checkdepends

---
 srcpkgs/gnome-settings-daemon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index 9ceb1d13de9..f4539a72d43 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -12,7 +12,7 @@ makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-dev
  xf86-input-wacom-devel"
 depends="hicolor-icon-theme pulseaudio"
 checkdepends="elogind libnotify python3-dbusmock python3-gobject
- python3-pycodestyle"
+ python3-pycodestyle which hwids eudev"
 short_desc="GNOME settings daemon"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"

From b27a81d2c5d5b0d5dac120088dde65e14724ba0f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 07:44:12 +0700
Subject: [PATCH 55/63] mutter: skip do_check

---
 srcpkgs/mutter/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 132cd9dd645..117b59a29a9 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -22,6 +22,10 @@ checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
 shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
  libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
+do_check() {
+	msg_warn "xvfb does not work\n"
+}
+
 mutter-devel_package() {
 	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
 	 libX11-devel libXtst-devel mutter-${version}_${revision}"

From 15db87d2a65818da8c275417d0d58015735f94f7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 21 Jun 2020 22:53:03 +0700
Subject: [PATCH 56/63] evolution-data-server: split vala build option from gir

---
 srcpkgs/evolution-data-server/template | 54 ++++++++++++--------------
 1 file changed, 25 insertions(+), 29 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index ebf8145f88c..822d59e6922 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -2,45 +2,38 @@
 pkgname=evolution-data-server
 version=3.36.3
 revision=1
+_basever=${version%.*}
 build_style=cmake
-build_helper=gir
+build_helper="gir qemu"
 configure_args="-DENABLE_UOA=OFF
- $(vopt_if gir '-DENABLE_INTROSPECTION=ON -DENABLE_VALA_BINDINGS=ON' '-DENABLE_WEATHER=OFF')"
+ $(vopt_if gir -DENABLE_INTROSPECTION=ON)
+ $(vopt_if vala -DENABLE_VALA_BINDINGS=ON)"
 hostmakedepends="flex glib-devel gperf intltool pkg-config libglib-devel
- $(vopt_if gir 'gobject-introspection')"
-makedepends="boost-devel libcanberra-devel libgdata-devel $(vopt_if gir libgweather-devel)
- libical-devel libsecret-devel mit-krb5-devel $(vopt_if gir 'vala-devel') webkit2gtk-devel"
-depends="$(vopt_if gir libgweather) libsoup-gnome"
+ $(vopt_if vala vala)"
+makedepends="boost-devel libcanberra-devel libgdata-devel libical-devel
+ libsecret-devel mit-krb5-devel webkit2gtk-devel libgweather-devel
+ $(vopt_if vala vala-devel)"
+depends="libgweather libsoup-gnome dbus tzdata"
+checkdepends="$depends"
 short_desc="Centralized access to appointments and contacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
-changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
-distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+changelog="https://raw.githubusercontent.com/GNOME/$pkgname/gnome-${_basever/./-}/NEWS"
+distfiles="${GNOME_SITE}/${pkgname}/${_basever}/${pkgname}-${version}.tar.xz"
 checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
-build_options="gir"
-if [ -z "$CROSS_BUILD" ]; then
-	build_options_default="gir"
-fi
+build_options="gir vala"
+build_options_default="gir vala"
 
-# cmake perfomrms 2 checks using binary runtime, about iconv and sfrtime.
-# musl (1.1.16) does not support "ISO-2022-JP" encoding (see its roadmap),
-# although evolution-data-server is fine with musl.
-# If crossbuild, cmake let disabling runtime checks via specific directives.
-# test iconv-detect.c also generates iconv-detect.h that is required for build.
-# So completly disable test from iconv-detect.c (cmake.patch file) and
-# use a cmake cache file on crossbuild to disable sfrtime running test.
-if [ "$CROSS_BUILD" ]; then
-	configure_args+=" -C disableRuntimeTests.cmake"
-fi
-
-pre_configure() {
-	mkdir -p build
-	cp ${FILESDIR}/iconv-detect.h ${wrksrc}/build/.
-	if [ "$CROSS_BUILD" ]; then
-		cp ${FILESDIR}/disableRuntimeTests.cmake ${wrksrc}/build/.
-	fi
+do_check() {
+	cd build
+	# TODO This test is problematic, first run usually fail
+	# Signify something wrong with evolution-data-server on first run
+	ctest -R test-book-client-custom-summary || true
+	# make test run ctest --force-new-ctest-process which is problematic
+	# noone should run multiple instance of evolution-data-server irl.
+	ctest
 }
 
 post_install() {
@@ -49,6 +42,7 @@ post_install() {
 
 evolution-data-server-devel_package() {
 	depends="sqlite-devel mit-krb5-devel nss-devel nspr-devel libical-devel
+
 		libldap-devel libgdata-devel>=0.15 libsecret-devel libglib-devel
 		libsoup-devel gtk+3-devel libxml2-devel gnome-desktop-devel
 		${sourcepkg}>=${version}_${revision}"
@@ -59,6 +53,8 @@ evolution-data-server-devel_package() {
 		vmove "usr/lib/*.so"
 		if [ "$build_option_gir" ]; then
 			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
 			vmove usr/share/vala
 		fi
 	}

From 1186c3890a76a3ebb44cea2629be0dfd5c2d22bf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:51:31 +0700
Subject: [PATCH 57/63] folks: add build option gir and vala

Disable gir and vala in evolution-data-server will make folks failed to
be built.

Either enable both of them, or disable both of them.
---
 srcpkgs/folks/template | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index e21ca9c1077..6dabeadafaf 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -5,10 +5,11 @@ revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Db_lto=false"
-hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
- gobject-introspection evolution-data-server-devel"
+hostmakedepends="pkg-config intltool glib-devel python3 python3-dbusmock
+ evolution-data-server-devel $(vopt_if vala vala)"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
- libgee08-devel evolution-data-server-devel tracker-devel"
+ libgee08-devel evolution-data-server-devel tracker-devel
+ $(vopt_if vala vala-devel)"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
@@ -17,6 +18,9 @@ homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
+build_options="gir vala"
+build_options_default="gir vala"
+
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
@@ -24,7 +28,11 @@ folks-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove "usr/lib/*.so"
-		vmove usr/share/vala
-		vmove usr/share/gir-1.0
+		if [ "$build_option_gir" ]; then
+			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
+			vmove usr/share/vala
+		fi
 	}
 }

From a081b1084c96ec4bf4c812bccbd4edae21f7c364 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:52:50 +0700
Subject: [PATCH 58/63] nautilus: correct checkdepends

---
 srcpkgs/nautilus/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 94cb10492ca..c6faf7bf3d7 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -11,7 +11,7 @@ makedepends="exempi-devel gnome-autoar-devel gnome-desktop-devel gtk+3-devel
  libX11-devel libxml2-devel tracker-devel gst-plugins-base1-devel"
 depends="desktop-file-utils gsettings-desktop-schemas hicolor-icon-theme
  tracker-miners tracker"
-checkdepends="tracker"
+checkdepends="tracker tracker-miners"
 short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"

From ae6d07813e90abc952137b369f9ec12e269d0ab2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:53:14 +0700
Subject: [PATCH 59/63] tracker: add tar to checkdepends

---
 srcpkgs/tracker/template | 1 +
 1 file changed, 1 insertion(+)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index e814f77c711..19338db45e1 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -11,6 +11,7 @@ hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
+checkdepends="tar"
 short_desc="Personal search tool and storage system"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"

From 241da46a4fb5f9244ea0275192a4e4b446b986d3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:53:55 +0700
Subject: [PATCH 60/63] tracker-miners: simplify template

---
 srcpkgs/tracker-miners/template | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/tracker-miners/template b/srcpkgs/tracker-miners/template
index 020c124f322..a5ad65d7441 100644
--- a/srcpkgs/tracker-miners/template
+++ b/srcpkgs/tracker-miners/template
@@ -3,6 +3,7 @@ pkgname=tracker-miners
 version=2.3.1
 revision=3
 build_style=meson
+# Missing libgrss
 configure_args="-Dtracker_core=system -Ddocs=false -Dextract=true
  -Dfunctional_tests=false -Dcue=enabled -Dexif=enabled -Dflac=enabled
  -Dgif=enabled -Dgsf=enabled -Diptc=enabled -Diso=enabled -Djpeg=enabled
@@ -17,14 +18,10 @@ makedepends="tracker-devel ffmpeg-devel dbus-devel exempi-devel libflac-devel
  libexif-devel libgsf-devel libgxps-devel libiptcdata-devel libjpeg-turbo-devel
  libosinfo-devel libpng-devel libseccomp-devel tiff-devel libxml2-devel
  libvorbis-devel poppler-glib-devel taglib-devel totem-pl-parser-devel
- upower-devel zlib-devel gst-plugins-base1-devel giflib-devel"
+ upower-devel zlib-devel gst-plugins-base1-devel giflib-devel libharfbuzz"
 short_desc="Data miners for tracker"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://developer.gnome.org/libtracker-miner/stable"
 distfiles="${GNOME_SITE}/tracker-miners/${version%.*}/tracker-miners-${version}.tar.xz"
 checksum=7b1de06a7a79ea1c7813c8a21f8cd1c55f2b95f799cf9f47f0204f3be8a590e0
-
-# Missing libgrss
-configure_args+=" -Dminer_rss=false"
-makedepends+=" libharfbuzz"

From 58d36e2e6bdb4a1448fe284fe7ea801dec6c514b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 24 Jun 2020 23:18:40 +0700
Subject: [PATCH 61/63] gnome-shell: add do_check

---
 srcpkgs/gnome-shell/template | 17 +++++++++++++++++
 srcpkgs/libgweather/template |  2 +-
 2 files changed, 18 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index ee4c6288f5f..deb922a09ad 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -15,6 +15,7 @@ makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  network-manager-applet-devel polkit-devel pulseaudio-devel
  startup-notification-devel telepathy-logger-devel gnome-autoar-devel"
 depends="caribou elogind glxinfo gnome-control-center gsettings-desktop-schemas upower"
+checkdepends="$depends accountsservice gdm xorg-server-xvfb pipewire mesa-dri dbus-x11"
 short_desc="GNOME core user interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
@@ -22,3 +23,19 @@ homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb
+
+do_check() {
+	local _pid
+	export DISPLAY=:1
+	export XDG_RUNTIME_DIR=/tmp
+	Xvfb :1 -screen 0 1366x768x24 &
+	_pid=$!
+	trap "kill $_pid" EXIT
+	trap 'exit 1' INT HUP TERM
+	eval $(dbus-launch)
+	export DBUS_SESSION_BUS_ADDRESS
+	ninja test -C build
+	# trap is hanging on normal exit, dbus?
+	trap - EXIT INT HUP TERM
+	kill $_pid || true
+}
diff --git a/srcpkgs/libgweather/template b/srcpkgs/libgweather/template
index d862170cc4e..ec3976562d8 100644
--- a/srcpkgs/libgweather/template
+++ b/srcpkgs/libgweather/template
@@ -5,7 +5,7 @@ revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Denable_vala=$(vopt_if vala true false)
- -Dintrospection=$(vopt_if gir true false) -Dtest=false
+ -Dintrospection=$(vopt_if gir true false)
  -Dzoneinfo_dir=/usr/share/zoneinfo"
 hostmakedepends="glib-devel intltool pkg-config $(vopt_if vala vala)"
 makedepends="geocode-glib-devel gtk+3-devel libsoup-gnome-devel"

From b2874ed802d0f4c58033b542b01d7f926edf40e9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 21 Jun 2020 15:54:46 +0700
Subject: [PATCH 62/63] common/shlibs: fix for libhidrd_item.so.0

---
 common/shlibs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/common/shlibs b/common/shlibs
index 23e0c8f685a..7947970373f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3972,7 +3972,7 @@ libjpegxr.so.0 jxrlib-0.2.2_1
 libjxrglue.so.0 jxrlib-0.2.2_1
 libhidrd_util.so.0 hidrd-0.2.0_1
 libhidrd_usage.so.0 hidrd-0.2.0_1
-libhidrd_item.so.0
+libhidrd_item.so.0 hidrd-0.2.0_1
 libhidrd_opt.so.0 hidrd-0.2.0_1
 libhidrd_strm.so.0 hidrd-0.2.0_1
 libhidrd_fmt.so.0 hidrd-0.2.0_1

From c6ce4a3350dea0024b5ee7b417aafafc9e17c6eb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Thu, 2 Jul 2020 09:17:31 +0700
Subject: [PATCH 63/63] fixup! evolution-data-server: split vala build option
 from gir

[ci skip]
---
 srcpkgs/evolution-data-server/template | 42 +++++++++++++++++++++++++-
 1 file changed, 41 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 822d59e6922..705ce093115 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -26,6 +26,47 @@ checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 build_options="gir vala"
 build_options_default="gir vala"
 
+pre_build() {
+	[ -z "$CROSS_BUILD" ] && return 0
+	local _dir=
+	for _dir in libebackend libedataserver libedataserverui \
+		addressbook/libebook-contacts \
+		addressbook/libedata-book \
+		addressbook/libebook \
+		calendar/libecal \
+		calendar/libedata-cal
+	do
+		ln -rsf $wrksrc/build/src/private/libedbus-private.so build/src/$_dir
+	done
+
+	for _dir in addressbook/libebook-contacts \
+		calendar/libecal calendar/libedata-cal
+	do
+		ln -sf ../../camel/libcamel-1.2.so.62 build/src/$_dir
+	done
+
+	for _dir in addressbook/libedata-book addressbook/libebook \
+		calendar/libedata-cal
+	do
+		ln -sf ../../libebackend/libebackend-1.2.so.10 build/src/$_dir
+	done
+
+	ln -sf ../../libedataserver/libedataserver-1.2.so.24 build/src/calendar/libecal
+	return
+	# ideally qemu should pick below LD_LIBARY_PATH
+	# instead of above shenanigans
+	# But it doesn't work for now, left it here as future reference.
+	# TODO figure a better methods
+	_builddir=$wrksrc/build
+	_ld_library_path=$_builddir:$_builddir/src
+	for _dir in libedataserver private camel
+	do
+		_ld_library_path+=":$_builddir/src/$_dir"
+	done
+	_ld_library_path+=":$XBPS_CROSS_BASE/usr/lib"
+	export QEMU_SET_ENV=LD_LIBARY_PATH=$_ld_library_path
+}
+
 do_check() {
 	cd build
 	# TODO This test is problematic, first run usually fail
@@ -42,7 +83,6 @@ post_install() {
 
 evolution-data-server-devel_package() {
 	depends="sqlite-devel mit-krb5-devel nss-devel nspr-devel libical-devel
-
 		libldap-devel libgdata-devel>=0.15 libsecret-devel libglib-devel
 		libsoup-devel gtk+3-devel libxml2-devel gnome-desktop-devel
 		${sourcepkg}>=${version}_${revision}"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (72 preceding siblings ...)
  2020-07-03 15:04 ` [PR PATCH] [Updated] " mnabid
@ 2020-07-03 15:06 ` mnabid
  2020-07-04 11:38 ` sgn
                   ` (13 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-07-03 15:06 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 199 bytes --]

New comment by mnabid on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-653588553

Comment:
> @mnabid explicit `return 0` should be better :)

Added.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (73 preceding siblings ...)
  2020-07-03 15:06 ` mnabid
@ 2020-07-04 11:38 ` sgn
  2020-07-04 12:15 ` [PR PATCH] [Updated] " mnabid
                   ` (12 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: sgn @ 2020-07-04 11:38 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 189 bytes --]

New comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-653755096

Comment:
`lutris` is a `python` package.
No need to rebuild.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (74 preceding siblings ...)
  2020-07-04 11:38 ` sgn
@ 2020-07-04 12:15 ` mnabid
  2020-07-06 21:20 ` mnabid
                   ` (11 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-07-04 12:15 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1836 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

gnome 3.36 updates
<details>
<summary><i>List of updates : </i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.3
 * evolution -> 3.36.3
 * evolution-data-server -> 3.36.3
 * evolution-ews -> 3.36.3
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.3
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.3
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.3
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.3
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.3
 * nautilus -> 3.36.3
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * python3-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built natively in `x86_64` and crossbuilt for `armv7l`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 761328 bytes --]

From 25431644eea4d2640909ee8a7a51d5aff70c84df Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:42:53 +0600
Subject: [PATCH 01/62] gnome-desktop: update to 3.36.2.

Closes: #21382
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 878ca5a5ac6..4277a983cef 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1182,7 +1182,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 74d6f2fa304e9f0b7a1eba06ab882a2ea9ab6735 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:18 +0600
Subject: [PATCH 02/62] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 3c924dec6a7cea2b586b2e20daed928ece6d52ab Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:25 +0600
Subject: [PATCH 03/62] nautilus: update to 3.36.3.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..94cb10492ca 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=b6cafc7ab1e70a64383de391b6097fcccbf36b208f8502d8c46423224fd30ef8
 
 build_options="gir"
 build_options_default="gir"

From db2af270987e21af0986ab11f09f0845fa54fa94 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:32 +0600
Subject: [PATCH 04/62] gnome-music: update to 3.36.3.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..2273ac1ca16 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.3
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=54f8d240f8995f4cff4dce5e1cbdc60befc81d79bf72c1e4fd807ed05c114237
 lib32disabled=yes

From b3eca6d00136acc882fd40b022542fbc1f6718c6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:38 +0600
Subject: [PATCH 05/62] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From d1dda7c95190d6ebb9872ccec6a895fbced44a4c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:51 +0600
Subject: [PATCH 06/62] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index e4cacb7079e..cfa1cf57594 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 44ceb3928558d0634e2007cd126f365e3bdf2393 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:59 +0600
Subject: [PATCH 07/62] evince: update to 3.36.3.

---
 srcpkgs/evince/template | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index c337a266ce0..ca961d00269 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,14 +1,13 @@
 # Template file for 'evince'
 pkgname=evince
-version=3.36.0
+version=3.36.3
 revision=1
 build_helper="gir"
-build_style=gnu-configure
-configure_args="$(vopt_enable gir introspection) --disable-schemas-compile
- --enable-comics --disable-static --enable-xps --disable-t1lib
- --disable-browser-plugin --enable-ps"
+build_style=meson
+configure_args="-Dcomics=enabled -Dxps=enabled -Dt1lib=enabled -Dps=enabled -Ddvi=disabled
+ -Dintrospection=$(vopt_if gir true false) -Dgtk_doc=$(vopt_if gtk_doc true false)"
 hostmakedepends="adwaita-icon-theme gettext glib-devel gnome-doc-utils
- itstool pkg-config perl-XML-Parser appstream-glib"
+ itstool pkg-config perl-XML-Parser appstream-glib $(vopt_if gtk_doc gtk-doc)"
 # XXX missing packages for DVI backend.
 makedepends="adwaita-icon-theme djvulibre-devel gnome-desktop-devel libSM-devel
  libgxps-devel libsecret-devel libspectre-devel nautilus-devel
@@ -19,9 +18,9 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evince"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=851d9b5234d479ab4c8f7c5cbaceb0e91ad79ccba1a7b733cde72dacc928fba8
+checksum=af2ebdf7f74e6580c4f1a12bdfe26b9ff90374d7acae061de0666d64012a9db2
 
-build_options="gir"
+build_options="gir gtk_doc"
 build_options_default="gir"
 
 libevince_package() {
@@ -41,7 +40,9 @@ evince-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove "usr/lib/*.so"
-		vmove usr/share/gtk-doc
+		if [ "$build_option_gtk_doc" ]; then
+			vmove usr/share/gtk-doc
+		fi
 		if [ "$build_option_gir" ]; then
 			vmove usr/share/gir-1.0
 		fi

From 89fcb2419cd52eb7b5283858d5b69c2f9051acda Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:07 +0600
Subject: [PATCH 08/62] gnome-maps: update to 3.36.2.

... and unmark nocross.
---
 common/shlibs               | 1 +
 srcpkgs/gnome-maps/template | 8 ++++----
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 4277a983cef..7c71fc4ab9f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -622,6 +622,7 @@ libcanberra-gtk3.so.0 libcanberra-gtk3-0.30_6
 libgtop-2.0.so.11 libgtop-2.38.0_1
 librarian.so.0 rarian-0.8.1_1
 libmusikcore.so musikcube-0.60.1_1
+libgnome-maps.so.0 gnome-maps-3.36.2_1
 libgnome-menu-3.so.0 gnome-menus-2.91.6_1
 libart_lgpl_2.so.2 libart-2.3.20_1
 libgnomecanvas-2.so.0 libgnomecanvas-2.30.1_1
diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..a67d84f4396 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,9 +1,10 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
+build_helper="gir"
+hostmakedepends="glib-devel gjs-devel intltool pkg-config AppStream"
 makedepends="folks-devel geoclue2-devel geocode-glib-devel gjs-devel
  gnome-desktop-devel libchamplain-devel rest-devel"
 depends="geoclue2 gfbgraph gjs"
@@ -12,5 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
-nocross="evolution-dataserver cross gir doesn't work"
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784

From b4a5528b6ee551205a1772d49a3e4733658f7a93 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:14 +0600
Subject: [PATCH 09/62] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 677837e17a651a60321dbf915fdc6feb8af2d623 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:21 +0600
Subject: [PATCH 10/62] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From 2d8937bd663f2d0dafebb87c3358922e4ffd1347 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:29 +0600
Subject: [PATCH 11/62] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From 87ee3c98c384138b53eeeb94cbb4a8adc9587287 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:36 +0600
Subject: [PATCH 12/62] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 6edd8bed0918ce30f8d0c6a76dbb76dfc13b4bd0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:44 +0600
Subject: [PATCH 13/62] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From b63282dce6c31e166e7c0a4777c4cb7104a5e61b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:52 +0600
Subject: [PATCH 14/62] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From f6dbcc228e040d62d36af62468b2811632d6fcdf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:01 +0600
Subject: [PATCH 15/62] gnome-control-center: update to 3.36.3.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..53a555525b4 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=bc174d970dbeca3ee19c26019de31e9edf78dc9c4abde16e763566ee38c3691c
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From fb2e3c2d4b19548f3239490bc53e9be21ff7385c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:08 +0600
Subject: [PATCH 16/62] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 97f7eb11e7bb2497466ffeefabe55c3dcf0c4e8b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:27 +0600
Subject: [PATCH 17/62] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 05c50eceeca11a0a5e169d623efc3e62c0263679 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:36 +0600
Subject: [PATCH 18/62] gnome-initial-setup: update to 3.36.3.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..caa33c2695e 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.3
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=d8a933f8c822cc293cc10b532779f8562342ae2271b929879e8f108491f4c285

From fa56595467ec80993450f1f9f1d9e438d9019ff5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:43 +0600
Subject: [PATCH 19/62] evolution-data-server: update to 3.36.3.

---
 srcpkgs/evolution-data-server/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 4ae820be068..ebf8145f88c 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,7 +1,7 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
-revision=2
+version=3.36.3
+revision=1
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From cbfc5ad701a02f62cddf86766c81fc5b37fa16cf Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:56 +0600
Subject: [PATCH 20/62] evolution: update to 3.36.3.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..d95c07eb72c 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=54e16caa286c02d4fe94b43e33abf5cd6f3a1502181bb8cf557aadc886b5ca03
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From d9bc797db1c521fe46f4731378d9ea61d60d66a6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:04 +0600
Subject: [PATCH 21/62] evolution-ews: update to 3.36.3.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..38fd62d39e1 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=7a97a59b10f7a48a3bcf6d476c6a2c068ec5c48c546a433812691b8301752d04

From 9789128ed0ca2634264ebc3e682d6faf07a4afba Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:11 +0600
Subject: [PATCH 22/62] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From fbc76452304a27a956678eda4fa6271784e05f23 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:19 +0600
Subject: [PATCH 23/62] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From a5e565cbf110eecd42cefcf254cfc9e13bfef04b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:26 +0600
Subject: [PATCH 24/62] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 7220e497b2926c1e5cf25d62a32d2ebd42be06a7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:41 +0600
Subject: [PATCH 25/62] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index 0141d97f85d..4881056ad76 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,8 +1,8 @@
 # Template file for 'python-atspi'
 # Keep python3-atspi in sync
 pkgname=python-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From b060da37cb2b6c20b74c3fa1a420ba23f2c84ae7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:48 +0600
Subject: [PATCH 26/62] python3-atspi: update to 2.36.0.

---
 srcpkgs/python3-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-atspi/template b/srcpkgs/python3-atspi/template
index a33a374fe18..b2360822acf 100644
--- a/srcpkgs/python3-atspi/template
+++ b/srcpkgs/python3-atspi/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-atspi'
 pkgname=python3-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From 427b176d2a6570eaab1aa85fa88f9d95ca681426 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:56 +0600
Subject: [PATCH 27/62] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 7c71fc4ab9f..5fc34e2c030 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -839,9 +839,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 95e25e8fcc52d2e71b463233e992f1c3f52957ec Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:03 +0600
Subject: [PATCH 28/62] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 8c70e4c56db5796cbe66aa89e3c8952b5a62f29c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:10 +0600
Subject: [PATCH 29/62] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..10ab8d79264 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,13 +1,13 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
+hostmakedepends="gettext docbook-xsl glib-devel libxslt pkg-config vala"
 makedepends="dconf-devel gtk+3-devel"
 short_desc="Low-level configuration system - GTK+ editor"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From e2f9e511d9742170ec6ff602bfc223a60a2555ea Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:16 +0600
Subject: [PATCH 30/62] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 37074cb348d..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
-revision=2
+version=2.3.4
+revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From fd10ec75f36d810133dc85132b188d7a7f550afe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:23 +0600
Subject: [PATCH 31/62] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 4e07ee121e0a7e05a33248deecfef6163ccd365c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:39 +0600
Subject: [PATCH 32/62] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 17b4ff30b5052be7ff7c38e9c9cdb5fae7e7ecd0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:47 +0600
Subject: [PATCH 33/62] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 5fc34e2c030..cbf3ea17531 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -570,7 +570,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From b1c9dd5ee48e7676a2b1133a7e429fba78aa07b3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:54 +0600
Subject: [PATCH 34/62] metacity: update to 3.36.1.

---
 common/shlibs                                 |  1 +
 .../patches/compositor-vulkan-fix-build.patch | 29 +++++++++++++++++++
 srcpkgs/metacity/template                     |  4 +--
 3 files changed, 32 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch

diff --git a/common/shlibs b/common/shlibs
index cbf3ea17531..74086b2b98b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -572,6 +572,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
new file mode 100644
index 00000000000..960582ded7d
--- /dev/null
+++ b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
@@ -0,0 +1,29 @@
+From 99361f28c8763ea4569b5ae9876028d53ac9a234 Mon Sep 17 00:00:00 2001
+From: Alberts Muktupāvels <alberts.muktupavels@gmail.com>
+Date: Sun, 24 May 2020 13:58:51 +0300
+Subject: [PATCH] compositor-vulkan: fix build
+
+VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE enum was removed in 1.2.140.
+
+https://gitlab.gnome.org/GNOME/metacity/-/issues/10
+---
+ src/compositor/meta-compositor-vulkan.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git src/compositor/meta-compositor-vulkan.c src/compositor/meta-compositor-vulkan.c
+index b87b5194..53b7b3ff 100644
+--- src/compositor/meta-compositor-vulkan.c
++++ src/compositor/meta-compositor-vulkan.c
+@@ -810,7 +810,9 @@ device_type_to_string (VkPhysicalDeviceType type)
+         return "cpu";
+         break;
+ 
++#if VK_HEADER_VERSION < 140
+       case VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE:
++#endif
+       case VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM:
+       default:
+         break;
+-- 
+GitLab
+
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 7fb86fd964c..7e22aeab5c7 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,6 +1,6 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
 hostmakedepends="gettext gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From ceeb3bb379dbcdb7a62c2ab88ff054d56a20eed0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:01 +0600
Subject: [PATCH 35/62] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 3d3710340b2921651702b5cb6b6f2c026dc76981 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:09 +0600
Subject: [PATCH 36/62] gnome-flashback: update to 3.36.3.

Added PAM config to enable screen locking.
---
 .../gnome-flashback/files/gnome-flashback.pam |  6 ++++
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 27 ++++++++++++------
 3 files changed, 52 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/files/gnome-flashback.pam
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/files/gnome-flashback.pam b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
new file mode 100644
index 00000000000..ebbb51dd0e8
--- /dev/null
+++ b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth       include	system-auth
+auth       optional     pam_gnome_keyring.so
+account    include	system-auth
+password   include	system-auth
+session    include	system-auth
diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..08566df5fd4 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,29 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="gettext-devel pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vinstall ${FILESDIR}/gnome-flashback.pam 644 /etc/pam.d gnome-flashback
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From dae364fd8a0e2980bc3429aa8cfa0b794b3da552 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:24 +0600
Subject: [PATCH 37/62] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From f61bfa08386f59b1e337d5807dc30ff33d6b486f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:30 +0600
Subject: [PATCH 38/62] mutter: update to 3.36.3.

---
 common/shlibs                                 |  18 +-
 .../patches/fix-cogl-egl-includes.patch       |  11 -
 srcpkgs/mutter/patches/pipewire-0.3.patch     | 521 ------------------
 srcpkgs/mutter/template                       |  27 +-
 4 files changed, 23 insertions(+), 554 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
 delete mode 100644 srcpkgs/mutter/patches/pipewire-0.3.patch

diff --git a/common/shlibs b/common/shlibs
index 74086b2b98b..23e0c8f685a 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3022,15 +3022,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.3_1
+libmutter-clutter-6.so mutter-3.36.3_1
+libmutter-clutter-6.so.0 mutter-3.36.3_1
+libmutter-cogl-path-6.so mutter-3.36.3_1
+libmutter-cogl-path-6.so.0 mutter-3.36.3_1
+libmutter-cogl-6.so mutter-3.36.3_1
+libmutter-cogl-6.so.0 mutter-3.36.3_1
+libmutter-cogl-pango-6.so mutter-3.36.3_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.3_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/patches/pipewire-0.3.patch b/srcpkgs/mutter/patches/pipewire-0.3.patch
deleted file mode 100644
index ebff65fba85..00000000000
--- a/srcpkgs/mutter/patches/pipewire-0.3.patch
+++ /dev/null
@@ -1,521 +0,0 @@
-Build mutter against pipewire-0.3, based on a patch at:
-https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1062
---- meson.build
-+++ meson.build
-@@ -50,7 +50,7 @@ libinput_req = '>= 1.7'
- gbm_req = '>= 10.3'
-
- # screen cast version requirements
--libpipewire_req = '>= 0.2.5'
-+libpipewire_req = '>= 0.3.0'
-
- gnome = import('gnome')
- pkg = import('pkgconfig')
-@@ -241,7 +241,7 @@ endif
-
- have_remote_desktop = get_option('remote_desktop')
- if have_remote_desktop
--  libpipewire_dep = dependency('libpipewire-0.2', version: libpipewire_req)
-+  libpipewire_dep = dependency('libpipewire-0.3', version: libpipewire_req)
- endif
-
- have_introspection = get_option('introspection')
-diff --git a/src/backends/meta-screen-cast-stream-src.c b/src/backends/meta-screen-cast-stream-src.c
-index 82c5cba436..ba1ce94a7e 100644
---- src/backends/meta-screen-cast-stream-src.c
-+++ src/backends/meta-screen-cast-stream-src.c
-@@ -29,6 +29,7 @@
- #include <spa/param/props.h>
- #include <spa/param/format-utils.h>
- #include <spa/param/video/format-utils.h>
-+#include <spa/utils/result.h>
- #include <stdint.h>
- #include <sys/mman.h>
-
-@@ -62,15 +63,6 @@ enum
-
- static guint signals[N_SIGNALS];
-
--typedef struct _MetaSpaType
--{
--  struct spa_type_media_type media_type;
--  struct spa_type_media_subtype media_subtype;
--  struct spa_type_format_video format_video;
--  struct spa_type_video_format video_format;
--  uint32_t meta_cursor;
--} MetaSpaType;
--
- typedef struct _MetaPipeWireSource
- {
-   GSource base;
-@@ -82,19 +74,19 @@ typedef struct _MetaScreenCastStreamSrcPrivate
- {
-   MetaScreenCastStream *stream;
-
-+  struct pw_context *pipewire_context;
-   struct pw_core *pipewire_core;
--  struct pw_remote *pipewire_remote;
--  struct pw_type *pipewire_type;
-   MetaPipeWireSource *pipewire_source;
--  struct spa_hook pipewire_remote_listener;
-+  struct spa_hook pipewire_core_listener;
-
-   gboolean is_enabled;
-
-   struct pw_stream *pipewire_stream;
-   struct spa_hook pipewire_stream_listener;
-+  uint32_t node_id;
-
--  MetaSpaType spa_type;
-   struct spa_video_info_raw video_format;
-+  int video_stride;
-
-   uint64_t last_frame_timestamp_us;
-
-@@ -112,8 +104,6 @@ G_DEFINE_TYPE_WITH_CODE (MetaScreenCastStreamSrc,
-                                                 meta_screen_cast_stream_src_init_initable_iface)
-                          G_ADD_PRIVATE (MetaScreenCastStreamSrc))
-
--#define PROP_RANGE(min, max) 2, (min), (max)
--
- static void
- meta_screen_cast_stream_src_get_specs (MetaScreenCastStreamSrc *src,
-                                        int                     *width,
-@@ -286,9 +276,6 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-                                                               int                      x,
-                                                               int                      y)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-
-   spa_meta_cursor->id = 1;
-@@ -300,7 +287,7 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   spa_meta_cursor->hotspot.x = 0;
-@@ -317,9 +304,6 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-                                                         int                      y,
-                                                         float                    scale)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   CoglTexture *cursor_texture;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-   int hotspot_x, hotspot_y;
-@@ -346,7 +330,7 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   meta_cursor_sprite_get_hotspot (cursor_sprite, &hotspot_x, &hotspot_y);
-@@ -382,12 +366,10 @@ static void
- add_cursor_metadata (MetaScreenCastStreamSrc *src,
-                      struct spa_buffer       *spa_buffer)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_cursor *spa_meta_cursor;
-
--  spa_meta_cursor = spa_buffer_find_meta (spa_buffer, spa_type->meta_cursor);
-+  spa_meta_cursor = spa_buffer_find_meta_data (spa_buffer, SPA_META_Cursor,
-+                                               sizeof (*spa_meta_cursor));
-   if (spa_meta_cursor)
-     meta_screen_cast_stream_src_set_cursor_metadata (src, spa_meta_cursor);
- }
-@@ -447,14 +429,14 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-     {
-       data = spa_buffer->datas[0].data;
-     }
--  else if (spa_buffer->datas[0].type == priv->pipewire_type->data.MemFd)
-+  else if (spa_buffer->datas[0].type == SPA_DATA_MemFd)
-     {
-       map = mmap (NULL, spa_buffer->datas[0].maxsize + spa_buffer->datas[0].mapoffset,
-                   PROT_READ | PROT_WRITE, MAP_SHARED,
-                   spa_buffer->datas[0].fd, 0);
-       if (map == MAP_FAILED)
-         {
--          g_warning ("Failed to mmap pipewire stream buffer: %s\n",
-+          g_warning ("Failed to mmap pipewire stream buffer: %s",
-                      strerror (errno));
-           return;
-         }
-@@ -469,28 +451,30 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-
-   if (meta_screen_cast_stream_src_record_frame (src, data))
-     {
--      struct spa_meta_video_crop *spa_meta_video_crop;
-+      struct spa_meta_region *spa_meta_video_crop;
-
-       spa_buffer->datas[0].chunk->size = spa_buffer->datas[0].maxsize;
-+      spa_buffer->datas[0].chunk->stride = priv->video_stride;
-
-       /* Update VideoCrop if needed */
-       spa_meta_video_crop =
--        spa_buffer_find_meta (spa_buffer, priv->pipewire_type->meta.VideoCrop);
-+        spa_buffer_find_meta_data (spa_buffer, SPA_META_VideoCrop,
-+                                   sizeof (*spa_meta_video_crop));
-       if (spa_meta_video_crop)
-         {
-           if (meta_screen_cast_stream_src_get_videocrop (src, &crop_rect))
-             {
--              spa_meta_video_crop->x = crop_rect.x;
--              spa_meta_video_crop->y = crop_rect.y;
--              spa_meta_video_crop->width = crop_rect.width;
--              spa_meta_video_crop->height = crop_rect.height;
-+              spa_meta_video_crop->region.position.x = crop_rect.x;
-+              spa_meta_video_crop->region.position.y = crop_rect.y;
-+              spa_meta_video_crop->region.size.width = crop_rect.width;
-+              spa_meta_video_crop->region.size.height = crop_rect.height;
-             }
-           else
-             {
--              spa_meta_video_crop->x = 0;
--              spa_meta_video_crop->y = 0;
--              spa_meta_video_crop->width = priv->stream_width;
--              spa_meta_video_crop->height = priv->stream_height;
-+              spa_meta_video_crop->region.position.x = 0;
-+              spa_meta_video_crop->region.position.y = 0;
-+              spa_meta_video_crop->region.size.width = priv->stream_width;
-+              spa_meta_video_crop->region.size.height = priv->stream_height;
-             }
-         }
-     }
-@@ -555,7 +539,6 @@ on_stream_state_changed (void                 *data,
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  uint32_t node_id;
-
-   switch (state)
-     {
-@@ -563,14 +546,12 @@ on_stream_state_changed (void                 *data,
-       g_warning ("pipewire stream error: %s", error_message);
-       meta_screen_cast_stream_src_notify_closed (src);
-       break;
--    case PW_STREAM_STATE_CONFIGURE:
--      node_id = pw_stream_get_node_id (priv->pipewire_stream);
--      g_signal_emit (src, signals[READY], 0, (unsigned int) node_id);
--      break;
--    case PW_STREAM_STATE_UNCONNECTED:
--    case PW_STREAM_STATE_CONNECTING:
--    case PW_STREAM_STATE_READY:
-     case PW_STREAM_STATE_PAUSED:
-+      if (priv->node_id == SPA_ID_INVALID && priv->pipewire_stream)
-+        {
-+          priv->node_id = pw_stream_get_node_id (priv->pipewire_stream);
-+          g_signal_emit (src, signals[READY], 0, (unsigned int) priv->node_id);
-+        }
-       if (meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_disable (src);
-       break;
-@@ -578,68 +559,69 @@ on_stream_state_changed (void                 *data,
-       if (!meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_enable (src);
-       break;
-+    case PW_STREAM_STATE_UNCONNECTED:
-+    case PW_STREAM_STATE_CONNECTING:
-+      break;
-     }
- }
-
- static void
--on_stream_format_changed (void                 *data,
--                          const struct spa_pod *format)
-+on_stream_param_changed (void                 *data,
-+                         uint32_t              id,
-+                         const struct spa_pod *format)
- {
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   uint8_t params_buffer[1024];
-   int32_t width, height, stride, size;
-   struct spa_pod_builder pod_builder;
-   const struct spa_pod *params[3];
-   const int bpp = 4;
-
--  if (!format)
--    {
--      pw_stream_finish_format (priv->pipewire_stream, 0, NULL, 0);
--      return;
--    }
-+  if (!format || id != SPA_PARAM_Format)
-+    return;
-
-   spa_format_video_raw_parse (format,
--                              &priv->video_format,
--                              &priv->spa_type.format_video);
-+                              &priv->video_format);
-
-   width = priv->video_format.size.width;
-   height = priv->video_format.size.height;
-   stride = SPA_ROUND_UP_N (width * bpp, 4);
-   size = height * stride;
-
-+  priv->video_stride = stride;
-+
-   pod_builder = SPA_POD_BUILDER_INIT (params_buffer, sizeof (params_buffer));
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idBuffers, pipewire_type->param_buffers.Buffers,
--    ":", pipewire_type->param_buffers.size, "i", size,
--    ":", pipewire_type->param_buffers.stride, "i", stride,
--    ":", pipewire_type->param_buffers.buffers, "iru", 16, PROP_RANGE (2, 16),
--    ":", pipewire_type->param_buffers.align, "i", 16);
--
--  params[1] = spa_pod_builder_object (
-+    SPA_TYPE_OBJECT_ParamBuffers, SPA_PARAM_Buffers,
-+    SPA_PARAM_BUFFERS_buffers, SPA_POD_CHOICE_RANGE_Int (16, 2, 16),
-+    SPA_PARAM_BUFFERS_blocks, SPA_POD_Int (1),
-+    SPA_PARAM_BUFFERS_size, SPA_POD_Int (size),
-+    SPA_PARAM_BUFFERS_stride, SPA_POD_Int (stride),
-+    SPA_PARAM_BUFFERS_align, SPA_POD_Int (16));
-+
-+  params[1] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", pipewire_type->meta.VideoCrop,
--    ":", pipewire_type->param_meta.size, "i", sizeof (struct spa_meta_video_crop));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_VideoCrop),
-+    SPA_PARAM_META_size, SPA_POD_Int (sizeof (struct spa_meta_region)));
-
--  params[2] = spa_pod_builder_object (
-+  params[2] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", priv->spa_type.meta_cursor,
--    ":", pipewire_type->param_meta.size, "i", CURSOR_META_SIZE (64, 64));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_Cursor),
-+    SPA_PARAM_META_size, SPA_POD_Int (CURSOR_META_SIZE (64, 64)));
-
--  pw_stream_finish_format (priv->pipewire_stream, 0,
--                           params, G_N_ELEMENTS (params));
-+  pw_stream_update_params (priv->pipewire_stream, params, G_N_ELEMENTS (params));
- }
-
- static const struct pw_stream_events stream_events = {
-   PW_VERSION_STREAM_EVENTS,
-   .state_changed = on_stream_state_changed,
--  .format_changed = on_stream_format_changed,
-+  .param_changed = on_stream_param_changed,
- };
-
- static struct pw_stream *
-@@ -652,8 +634,6 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   uint8_t buffer[1024];
-   struct spa_pod_builder pod_builder =
-     SPA_POD_BUILDER_INIT (buffer, sizeof (buffer));
--  MetaSpaType *spa_type = &priv->spa_type;
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   float frame_rate;
-   MetaFraction frame_rate_fraction;
-   struct spa_fraction max_framerate;
-@@ -661,7 +641,9 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   const struct spa_pod *params[1];
-   int result;
-
--  pipewire_stream = pw_stream_new (priv->pipewire_remote,
-+  priv->node_id = SPA_ID_INVALID;
-+
-+  pipewire_stream = pw_stream_new (priv->pipewire_core,
-                                    "meta-screen-cast-src",
-                                    NULL);
-   if (!pipewire_stream)
-@@ -682,17 +664,17 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   max_framerate = SPA_FRACTION (frame_rate_fraction.num,
-                                 frame_rate_fraction.denom);
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idEnumFormat, pipewire_type->spa_format,
--    "I", spa_type->media_type.video,
--    "I", spa_type->media_subtype.raw,
--    ":", spa_type->format_video.format, "I", spa_type->video_format.BGRx,
--    ":", spa_type->format_video.size, "R", &SPA_RECTANGLE (priv->stream_width,
--                                                           priv->stream_height),
--    ":", spa_type->format_video.framerate, "F", &SPA_FRACTION (0, 1),
--    ":", spa_type->format_video.max_framerate, "Fru", &max_framerate,
--                                                      PROP_RANGE (&min_framerate,
-+    SPA_TYPE_OBJECT_Format, SPA_PARAM_EnumFormat,
-+    SPA_FORMAT_mediaType, SPA_POD_Id (SPA_MEDIA_TYPE_video),
-+    SPA_FORMAT_mediaSubtype, SPA_POD_Id (SPA_MEDIA_SUBTYPE_raw),
-+    SPA_FORMAT_VIDEO_format, SPA_POD_Id (SPA_VIDEO_FORMAT_BGRx),
-+    SPA_FORMAT_VIDEO_size, SPA_POD_Rectangle (&SPA_RECTANGLE (priv->stream_width,
-+                                                              priv->stream_height)),
-+    SPA_FORMAT_VIDEO_framerate, SPA_POD_Fraction (&SPA_FRACTION (0, 1)),
-+    SPA_FORMAT_VIDEO_maxFramerate, SPA_POD_CHOICE_RANGE_Fraction (&max_framerate,
-+                                                                  &min_framerate,
-                                                                   &max_framerate));
-
-   pw_stream_add_listener (pipewire_stream,
-@@ -702,7 +684,7 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-
-   result = pw_stream_connect (pipewire_stream,
-                               PW_DIRECTION_OUTPUT,
--                              NULL,
-+                              SPA_ID_INVALID,
-                               (PW_STREAM_FLAG_DRIVER |
-                                PW_STREAM_FLAG_MAP_BUFFERS),
-                               params, G_N_ELEMENTS (params));
-@@ -717,40 +699,18 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
- }
-
- static void
--on_state_changed (void                 *data,
--                  enum pw_remote_state  old,
--                  enum pw_remote_state  state,
--                  const char           *error_message)
-+on_core_error (void       *data,
-+               uint32_t    id,
-+	       int         seq,
-+	       int         res,
-+	       const char *message)
- {
-   MetaScreenCastStreamSrc *src = data;
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_stream *pipewire_stream;
--  GError *error = NULL;
-
--  switch (state)
--    {
--    case PW_REMOTE_STATE_ERROR:
--      g_warning ("pipewire remote error: %s\n", error_message);
--      meta_screen_cast_stream_src_notify_closed (src);
--      break;
--    case PW_REMOTE_STATE_CONNECTED:
--      pipewire_stream = create_pipewire_stream (src, &error);
--      if (!pipewire_stream)
--        {
--          g_warning ("Could not create pipewire stream: %s", error->message);
--          g_error_free (error);
--          meta_screen_cast_stream_src_notify_closed (src);
--        }
--      else
--        {
--          priv->pipewire_stream = pipewire_stream;
--        }
--      break;
--    case PW_REMOTE_STATE_UNCONNECTED:
--    case PW_REMOTE_STATE_CONNECTING:
--      break;
--    }
-+  g_warning ("pipewire remote error: id:%u %s", id, message);
-+
-+  if (id == PW_ID_CORE && res == -EPIPE)
-+    meta_screen_cast_stream_src_notify_closed (src);
- }
-
- static gboolean
-@@ -793,17 +753,6 @@ static GSourceFuncs pipewire_source_funcs =
-   pipewire_loop_source_finalize
- };
-
--static void
--init_spa_type (MetaSpaType         *type,
--               struct spa_type_map *map)
--{
--  spa_type_media_type_map (map, &type->media_type);
--  spa_type_media_subtype_map (map, &type->media_subtype);
--  spa_type_format_video_map (map, &type->format_video);
--  spa_type_video_format_map (map, &type->video_format);
--  type->meta_cursor = spa_type_map_get_id(map, SPA_TYPE_META__Cursor);
--}
--
- static MetaPipeWireSource *
- create_pipewire_source (void)
- {
-@@ -829,9 +778,9 @@ create_pipewire_source (void)
-   return pipewire_source;
- }
-
--static const struct pw_remote_events remote_events = {
--  PW_VERSION_REMOTE_EVENTS,
--  .state_changed = on_state_changed,
-+static const struct pw_core_events core_events = {
-+  PW_VERSION_CORE_EVENTS,
-+  .error = on_core_error,
- };
-
- static gboolean
-@@ -851,37 +800,31 @@ meta_screen_cast_stream_src_initable_init (GInitable     *initable,
-       return FALSE;
-     }
-
--  priv->pipewire_core = pw_core_new (priv->pipewire_source->pipewire_loop,
--                                     NULL);
--  if (!priv->pipewire_core)
-+  priv->pipewire_context = pw_context_new (priv->pipewire_source->pipewire_loop,
-+                                           NULL, 0);
-+  if (!priv->pipewire_context)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Failed to create pipewire core");
-+                   "Failed to create pipewire context");
-       return FALSE;
-     }
-
--  priv->pipewire_remote = pw_remote_new (priv->pipewire_core, NULL, 0);
--  if (!priv->pipewire_remote)
-+  priv->pipewire_core = pw_context_connect (priv->pipewire_context, NULL, 0);
-+  if (!priv->pipewire_core)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't creat pipewire remote");
-+                   "Couldn't connect pipewire context");
-       return FALSE;
-     }
-
--  pw_remote_add_listener (priv->pipewire_remote,
--                          &priv->pipewire_remote_listener,
--                          &remote_events,
--                          src);
-+  pw_core_add_listener (priv->pipewire_core,
-+                        &priv->pipewire_core_listener,
-+                        &core_events,
-+                        src);
-
--  priv->pipewire_type = pw_core_get_type (priv->pipewire_core);
--  init_spa_type (&priv->spa_type, priv->pipewire_type->map);
--
--  if (pw_remote_connect (priv->pipewire_remote) != 0)
--    {
--      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't connect pipewire remote");
--      return FALSE;
--    }
-+  priv->pipewire_stream = create_pipewire_stream (src, error);
-+  if (!priv->pipewire_stream)
-+    return FALSE;
-
-   return TRUE;
- }
-@@ -912,8 +855,8 @@ meta_screen_cast_stream_src_finalize (GObject *object)
-     meta_screen_cast_stream_src_disable (src);
-
-   g_clear_pointer (&priv->pipewire_stream, pw_stream_destroy);
--  g_clear_pointer (&priv->pipewire_remote, pw_remote_destroy);
--  g_clear_pointer (&priv->pipewire_core, pw_core_destroy);
-+  g_clear_pointer (&priv->pipewire_core, pw_core_disconnect);
-+  g_clear_pointer (&priv->pipewire_context, pw_context_destroy);
-   g_source_destroy (&priv->pipewire_source->base);
-
-   G_OBJECT_CLASS (meta_screen_cast_stream_src_parent_class)->finalize (object);
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 806a3bef9f0..132cd9dd645 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,35 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=3
+version=3.36.3
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+ -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland
+ -Dxwayland_initfd=disabled"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From 3a8876f439d750c00e0f099f117c9cb39156393e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:38 +0600
Subject: [PATCH 39/62] gnome-shell: update to 3.36.3.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..ee4c6288f5f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb

From f3d6d0d9ffdef996078998aa36c39a48cf95c7cc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:46 +0600
Subject: [PATCH 40/62] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From b414331334f050eddfce04fc36c550866626f504 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:53 +0600
Subject: [PATCH 41/62] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..16bc43fd0e7 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -13,15 +13,15 @@ configure_args="$(vopt_enable gir introspection)
 hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
-depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+depends="gnome-settings-daemon gnome-shell gnome-session gnome-themes-extra
+ gsettings-desktop-schemas xorg-server xorg-server-xwayland xrdb"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From f7301525faf87ab8fb0dd8318791e6c8ce5c473e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:00 +0600
Subject: [PATCH 42/62] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 5bc9cff3ad66bcb5201b486fb089c81ac781507e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:07 +0600
Subject: [PATCH 43/62] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 26464aca79b5d4fb8d1decade4b4e22d0cf222aa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:14 +0600
Subject: [PATCH 44/62] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From b64275edfd2201ca24df6fc4f474ab00da6173f2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:21 +0600
Subject: [PATCH 45/62] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From c60b37b74cb53ae8301fc6e386e0032e5a558f61 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:28 +0600
Subject: [PATCH 46/62] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 7af551e2ab242e68de85e8631784a94c220c0716 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:36 +0600
Subject: [PATCH 47/62] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From 70551b3e7dd1897f5a399f3e39d2e902f207df1e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:46 +0600
Subject: [PATCH 48/62] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 349465f5bfaa3d7829a6b3af4741c5e86ac3d5b8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:54 +0600
Subject: [PATCH 49/62] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 5536ecb3a43bdec4bca8157316d0c8bb6aac7dad Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:01 +0600
Subject: [PATCH 50/62] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From b84ce3718a9be255e97e993e71b64cbd4ab8b7ac Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:09 +0600
Subject: [PATCH 51/62] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 05a207842d5520149cf0ac3a6bf6ba72854a8f43 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 16 Jun 2020 22:56:53 +0700
Subject: [PATCH 52/62] gnome-desktop: add do_check

---
 srcpkgs/gnome-desktop/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index c1a7408c207..ccd7c56569a 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -11,6 +11,7 @@ makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
  libxkbfile-devel libXrandr-devel gdk-pixbuf-devel"
 depends="bubblewrap gsettings-desktop-schemas iso-codes xkeyboard-config"
+checkdepends="$depends xorg-server-xvfb"
 short_desc="GNOME desktop management utilities"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
@@ -21,6 +22,22 @@ checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 build_options="gir"
 build_options_default="gir"
 
+do_check() {
+	# there is still 1 test fail for he_IL locale in musl
+	if test "$XBPS_TARGET_LIBC" != musl; then
+		local _pid
+		Xvfb :1 -screen 0 1366x768x24 &
+		_pid=$!
+		trap "kill $_pid" EXIT
+		trap 'exit 1' INT HUP TERM
+		export DISPLAY=:1
+		ninja -C build test
+		trap - EXIT INT HUP TERM
+		kill $_pid
+	fi
+}
+
+
 gnome-desktop-devel_package() {
 	depends="gtk+3-devel gsettings-desktop-schemas-devel>=3.12
 	 gdk-pixbuf-devel iso-codes libX11-devel libglib-devel libseccomp-devel

From 0e876a2e12a7e050e1cbdecb35b995724dc95fd6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 06:25:55 +0700
Subject: [PATCH 53/62] gnome-settings-daemon: fix checkdepends

---
 srcpkgs/gnome-settings-daemon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index 9ceb1d13de9..f4539a72d43 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -12,7 +12,7 @@ makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-dev
  xf86-input-wacom-devel"
 depends="hicolor-icon-theme pulseaudio"
 checkdepends="elogind libnotify python3-dbusmock python3-gobject
- python3-pycodestyle"
+ python3-pycodestyle which hwids eudev"
 short_desc="GNOME settings daemon"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"

From 5065199f50d8bbf6a5b6a97f49894775f948d6bb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 07:44:12 +0700
Subject: [PATCH 54/62] mutter: skip do_check

---
 srcpkgs/mutter/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 132cd9dd645..117b59a29a9 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -22,6 +22,10 @@ checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
 shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
  libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
+do_check() {
+	msg_warn "xvfb does not work\n"
+}
+
 mutter-devel_package() {
 	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
 	 libX11-devel libXtst-devel mutter-${version}_${revision}"

From 536bf54c05e8d14192d7a2954c6b5bf1e489bff8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 21 Jun 2020 22:53:03 +0700
Subject: [PATCH 55/62] evolution-data-server: split vala build option from gir

---
 srcpkgs/evolution-data-server/template | 54 ++++++++++++--------------
 1 file changed, 25 insertions(+), 29 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index ebf8145f88c..822d59e6922 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -2,45 +2,38 @@
 pkgname=evolution-data-server
 version=3.36.3
 revision=1
+_basever=${version%.*}
 build_style=cmake
-build_helper=gir
+build_helper="gir qemu"
 configure_args="-DENABLE_UOA=OFF
- $(vopt_if gir '-DENABLE_INTROSPECTION=ON -DENABLE_VALA_BINDINGS=ON' '-DENABLE_WEATHER=OFF')"
+ $(vopt_if gir -DENABLE_INTROSPECTION=ON)
+ $(vopt_if vala -DENABLE_VALA_BINDINGS=ON)"
 hostmakedepends="flex glib-devel gperf intltool pkg-config libglib-devel
- $(vopt_if gir 'gobject-introspection')"
-makedepends="boost-devel libcanberra-devel libgdata-devel $(vopt_if gir libgweather-devel)
- libical-devel libsecret-devel mit-krb5-devel $(vopt_if gir 'vala-devel') webkit2gtk-devel"
-depends="$(vopt_if gir libgweather) libsoup-gnome"
+ $(vopt_if vala vala)"
+makedepends="boost-devel libcanberra-devel libgdata-devel libical-devel
+ libsecret-devel mit-krb5-devel webkit2gtk-devel libgweather-devel
+ $(vopt_if vala vala-devel)"
+depends="libgweather libsoup-gnome dbus tzdata"
+checkdepends="$depends"
 short_desc="Centralized access to appointments and contacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
-changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
-distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+changelog="https://raw.githubusercontent.com/GNOME/$pkgname/gnome-${_basever/./-}/NEWS"
+distfiles="${GNOME_SITE}/${pkgname}/${_basever}/${pkgname}-${version}.tar.xz"
 checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
-build_options="gir"
-if [ -z "$CROSS_BUILD" ]; then
-	build_options_default="gir"
-fi
+build_options="gir vala"
+build_options_default="gir vala"
 
-# cmake perfomrms 2 checks using binary runtime, about iconv and sfrtime.
-# musl (1.1.16) does not support "ISO-2022-JP" encoding (see its roadmap),
-# although evolution-data-server is fine with musl.
-# If crossbuild, cmake let disabling runtime checks via specific directives.
-# test iconv-detect.c also generates iconv-detect.h that is required for build.
-# So completly disable test from iconv-detect.c (cmake.patch file) and
-# use a cmake cache file on crossbuild to disable sfrtime running test.
-if [ "$CROSS_BUILD" ]; then
-	configure_args+=" -C disableRuntimeTests.cmake"
-fi
-
-pre_configure() {
-	mkdir -p build
-	cp ${FILESDIR}/iconv-detect.h ${wrksrc}/build/.
-	if [ "$CROSS_BUILD" ]; then
-		cp ${FILESDIR}/disableRuntimeTests.cmake ${wrksrc}/build/.
-	fi
+do_check() {
+	cd build
+	# TODO This test is problematic, first run usually fail
+	# Signify something wrong with evolution-data-server on first run
+	ctest -R test-book-client-custom-summary || true
+	# make test run ctest --force-new-ctest-process which is problematic
+	# noone should run multiple instance of evolution-data-server irl.
+	ctest
 }
 
 post_install() {
@@ -49,6 +42,7 @@ post_install() {
 
 evolution-data-server-devel_package() {
 	depends="sqlite-devel mit-krb5-devel nss-devel nspr-devel libical-devel
+
 		libldap-devel libgdata-devel>=0.15 libsecret-devel libglib-devel
 		libsoup-devel gtk+3-devel libxml2-devel gnome-desktop-devel
 		${sourcepkg}>=${version}_${revision}"
@@ -59,6 +53,8 @@ evolution-data-server-devel_package() {
 		vmove "usr/lib/*.so"
 		if [ "$build_option_gir" ]; then
 			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
 			vmove usr/share/vala
 		fi
 	}

From 7c8c05d4b3ffb3f59d85c7fa73e58bd513d2bb12 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:51:31 +0700
Subject: [PATCH 56/62] folks: add build option gir and vala

Disable gir and vala in evolution-data-server will make folks failed to
be built.

Either enable both of them, or disable both of them.
---
 srcpkgs/folks/template | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index e21ca9c1077..6dabeadafaf 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -5,10 +5,11 @@ revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Db_lto=false"
-hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
- gobject-introspection evolution-data-server-devel"
+hostmakedepends="pkg-config intltool glib-devel python3 python3-dbusmock
+ evolution-data-server-devel $(vopt_if vala vala)"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
- libgee08-devel evolution-data-server-devel tracker-devel"
+ libgee08-devel evolution-data-server-devel tracker-devel
+ $(vopt_if vala vala-devel)"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
@@ -17,6 +18,9 @@ homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
+build_options="gir vala"
+build_options_default="gir vala"
+
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
@@ -24,7 +28,11 @@ folks-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove "usr/lib/*.so"
-		vmove usr/share/vala
-		vmove usr/share/gir-1.0
+		if [ "$build_option_gir" ]; then
+			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
+			vmove usr/share/vala
+		fi
 	}
 }

From cbfaa2bd7b5aa6ce52c56c8f4e866266972c3688 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:52:50 +0700
Subject: [PATCH 57/62] nautilus: correct checkdepends

---
 srcpkgs/nautilus/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 94cb10492ca..c6faf7bf3d7 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -11,7 +11,7 @@ makedepends="exempi-devel gnome-autoar-devel gnome-desktop-devel gtk+3-devel
  libX11-devel libxml2-devel tracker-devel gst-plugins-base1-devel"
 depends="desktop-file-utils gsettings-desktop-schemas hicolor-icon-theme
  tracker-miners tracker"
-checkdepends="tracker"
+checkdepends="tracker tracker-miners"
 short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"

From 78f6c8de44dc90f6a2c44aaf9b37d7ed28b67e17 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:53:14 +0700
Subject: [PATCH 58/62] tracker: add tar to checkdepends

---
 srcpkgs/tracker/template | 1 +
 1 file changed, 1 insertion(+)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index e814f77c711..19338db45e1 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -11,6 +11,7 @@ hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
+checkdepends="tar"
 short_desc="Personal search tool and storage system"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"

From cbbdd93cfa60fb800ec0a3744eafa7a3861e1144 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:53:55 +0700
Subject: [PATCH 59/62] tracker-miners: simplify template

---
 srcpkgs/tracker-miners/template | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/tracker-miners/template b/srcpkgs/tracker-miners/template
index 020c124f322..a5ad65d7441 100644
--- a/srcpkgs/tracker-miners/template
+++ b/srcpkgs/tracker-miners/template
@@ -3,6 +3,7 @@ pkgname=tracker-miners
 version=2.3.1
 revision=3
 build_style=meson
+# Missing libgrss
 configure_args="-Dtracker_core=system -Ddocs=false -Dextract=true
  -Dfunctional_tests=false -Dcue=enabled -Dexif=enabled -Dflac=enabled
  -Dgif=enabled -Dgsf=enabled -Diptc=enabled -Diso=enabled -Djpeg=enabled
@@ -17,14 +18,10 @@ makedepends="tracker-devel ffmpeg-devel dbus-devel exempi-devel libflac-devel
  libexif-devel libgsf-devel libgxps-devel libiptcdata-devel libjpeg-turbo-devel
  libosinfo-devel libpng-devel libseccomp-devel tiff-devel libxml2-devel
  libvorbis-devel poppler-glib-devel taglib-devel totem-pl-parser-devel
- upower-devel zlib-devel gst-plugins-base1-devel giflib-devel"
+ upower-devel zlib-devel gst-plugins-base1-devel giflib-devel libharfbuzz"
 short_desc="Data miners for tracker"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://developer.gnome.org/libtracker-miner/stable"
 distfiles="${GNOME_SITE}/tracker-miners/${version%.*}/tracker-miners-${version}.tar.xz"
 checksum=7b1de06a7a79ea1c7813c8a21f8cd1c55f2b95f799cf9f47f0204f3be8a590e0
-
-# Missing libgrss
-configure_args+=" -Dminer_rss=false"
-makedepends+=" libharfbuzz"

From db15eb42434d052a91fe883213d919f2650e6275 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 24 Jun 2020 23:18:40 +0700
Subject: [PATCH 60/62] gnome-shell: add do_check

---
 srcpkgs/gnome-shell/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index ee4c6288f5f..deb922a09ad 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -15,6 +15,7 @@ makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  network-manager-applet-devel polkit-devel pulseaudio-devel
  startup-notification-devel telepathy-logger-devel gnome-autoar-devel"
 depends="caribou elogind glxinfo gnome-control-center gsettings-desktop-schemas upower"
+checkdepends="$depends accountsservice gdm xorg-server-xvfb pipewire mesa-dri dbus-x11"
 short_desc="GNOME core user interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
@@ -22,3 +23,19 @@ homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb
+
+do_check() {
+	local _pid
+	export DISPLAY=:1
+	export XDG_RUNTIME_DIR=/tmp
+	Xvfb :1 -screen 0 1366x768x24 &
+	_pid=$!
+	trap "kill $_pid" EXIT
+	trap 'exit 1' INT HUP TERM
+	eval $(dbus-launch)
+	export DBUS_SESSION_BUS_ADDRESS
+	ninja test -C build
+	# trap is hanging on normal exit, dbus?
+	trap - EXIT INT HUP TERM
+	kill $_pid || true
+}

From 50838406dba233b7b5114e051184d3754d7f96d7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 21 Jun 2020 15:54:46 +0700
Subject: [PATCH 61/62] common/shlibs: fix for libhidrd_item.so.0

---
 common/shlibs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/common/shlibs b/common/shlibs
index 23e0c8f685a..7947970373f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3972,7 +3972,7 @@ libjpegxr.so.0 jxrlib-0.2.2_1
 libjxrglue.so.0 jxrlib-0.2.2_1
 libhidrd_util.so.0 hidrd-0.2.0_1
 libhidrd_usage.so.0 hidrd-0.2.0_1
-libhidrd_item.so.0
+libhidrd_item.so.0 hidrd-0.2.0_1
 libhidrd_opt.so.0 hidrd-0.2.0_1
 libhidrd_strm.so.0 hidrd-0.2.0_1
 libhidrd_fmt.so.0 hidrd-0.2.0_1

From e606bf0780577335c42b7e95169e92f97caf3eb4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Thu, 2 Jul 2020 09:17:31 +0700
Subject: [PATCH 62/62] fixup! evolution-data-server: split vala build option
 from gir

[ci skip]
---
 srcpkgs/evolution-data-server/template | 42 +++++++++++++++++++++++++-
 1 file changed, 41 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 822d59e6922..705ce093115 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -26,6 +26,47 @@ checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 build_options="gir vala"
 build_options_default="gir vala"
 
+pre_build() {
+	[ -z "$CROSS_BUILD" ] && return 0
+	local _dir=
+	for _dir in libebackend libedataserver libedataserverui \
+		addressbook/libebook-contacts \
+		addressbook/libedata-book \
+		addressbook/libebook \
+		calendar/libecal \
+		calendar/libedata-cal
+	do
+		ln -rsf $wrksrc/build/src/private/libedbus-private.so build/src/$_dir
+	done
+
+	for _dir in addressbook/libebook-contacts \
+		calendar/libecal calendar/libedata-cal
+	do
+		ln -sf ../../camel/libcamel-1.2.so.62 build/src/$_dir
+	done
+
+	for _dir in addressbook/libedata-book addressbook/libebook \
+		calendar/libedata-cal
+	do
+		ln -sf ../../libebackend/libebackend-1.2.so.10 build/src/$_dir
+	done
+
+	ln -sf ../../libedataserver/libedataserver-1.2.so.24 build/src/calendar/libecal
+	return
+	# ideally qemu should pick below LD_LIBARY_PATH
+	# instead of above shenanigans
+	# But it doesn't work for now, left it here as future reference.
+	# TODO figure a better methods
+	_builddir=$wrksrc/build
+	_ld_library_path=$_builddir:$_builddir/src
+	for _dir in libedataserver private camel
+	do
+		_ld_library_path+=":$_builddir/src/$_dir"
+	done
+	_ld_library_path+=":$XBPS_CROSS_BASE/usr/lib"
+	export QEMU_SET_ENV=LD_LIBARY_PATH=$_ld_library_path
+}
+
 do_check() {
 	cd build
 	# TODO This test is problematic, first run usually fail
@@ -42,7 +83,6 @@ post_install() {
 
 evolution-data-server-devel_package() {
 	depends="sqlite-devel mit-krb5-devel nss-devel nspr-devel libical-devel
-
 		libldap-devel libgdata-devel>=0.15 libsecret-devel libglib-devel
 		libsoup-devel gtk+3-devel libxml2-devel gnome-desktop-devel
 		${sourcepkg}>=${version}_${revision}"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (75 preceding siblings ...)
  2020-07-04 12:15 ` [PR PATCH] [Updated] " mnabid
@ 2020-07-06 21:20 ` mnabid
  2020-07-07 15:20 ` mnabid
                   ` (10 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-07-06 21:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1836 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

gnome 3.36 updates
<details>
<summary><i>List of updates : </i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.3
 * evolution -> 3.36.3
 * evolution-data-server -> 3.36.3
 * evolution-ews -> 3.36.3
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.3
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.3
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.3
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.3
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.3
 * nautilus -> 3.36.3
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * python3-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built natively in `x86_64` and crossbuilt for `armv7l`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 759099 bytes --]

From 26b970a4bd5f1992c99bd5cbc06a68f31e10f46d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:42:53 +0600
Subject: [PATCH 01/61] gnome-desktop: update to 3.36.2.

Closes: #21382
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index ed1906bbb78..71790a104fb 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1182,7 +1182,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 7cf7f9774400d1e0285063b3623528aaf2b8b9ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:18 +0600
Subject: [PATCH 02/61] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 5563301d718424e904d5c2b2f6ad30161307fa73 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:25 +0600
Subject: [PATCH 03/61] nautilus: update to 3.36.3.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..94cb10492ca 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=b6cafc7ab1e70a64383de391b6097fcccbf36b208f8502d8c46423224fd30ef8
 
 build_options="gir"
 build_options_default="gir"

From f42187ba95a21bfdb7bca4dccc7abbd830d558ba Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:32 +0600
Subject: [PATCH 04/61] gnome-music: update to 3.36.3.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..2273ac1ca16 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.3
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=54f8d240f8995f4cff4dce5e1cbdc60befc81d79bf72c1e4fd807ed05c114237
 lib32disabled=yes

From 7e0dca6b0f7f0c33f54a5d6b77906aa44e421097 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:38 +0600
Subject: [PATCH 05/61] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From d3659333f3f3572284db555b1310b835bb4ddeea Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:51 +0600
Subject: [PATCH 06/61] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index e4cacb7079e..cfa1cf57594 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From cbbee251cf2e232605d29991d90189784d586b00 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:07 +0600
Subject: [PATCH 07/61] gnome-maps: update to 3.36.2.

... and unmark nocross.
---
 common/shlibs               | 1 +
 srcpkgs/gnome-maps/template | 8 ++++----
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 71790a104fb..05865bf5576 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -622,6 +622,7 @@ libcanberra-gtk3.so.0 libcanberra-gtk3-0.30_6
 libgtop-2.0.so.11 libgtop-2.38.0_1
 librarian.so.0 rarian-0.8.1_1
 libmusikcore.so musikcube-0.60.1_1
+libgnome-maps.so.0 gnome-maps-3.36.2_1
 libgnome-menu-3.so.0 gnome-menus-2.91.6_1
 libart_lgpl_2.so.2 libart-2.3.20_1
 libgnomecanvas-2.so.0 libgnomecanvas-2.30.1_1
diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..a67d84f4396 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,9 +1,10 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
+build_helper="gir"
+hostmakedepends="glib-devel gjs-devel intltool pkg-config AppStream"
 makedepends="folks-devel geoclue2-devel geocode-glib-devel gjs-devel
  gnome-desktop-devel libchamplain-devel rest-devel"
 depends="geoclue2 gfbgraph gjs"
@@ -12,5 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
-nocross="evolution-dataserver cross gir doesn't work"
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784

From c2a07eaaa4e08b08c10e8015a968cac77bbac977 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:14 +0600
Subject: [PATCH 08/61] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From cd4872175df110a04c4043b1cf890b0443510f0e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:21 +0600
Subject: [PATCH 09/61] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From 8867f861d05272524435d8b172fcf12266f9d3f1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:29 +0600
Subject: [PATCH 10/61] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From 487f2604d454925bc78650bb08a7fbf4c07be54c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:36 +0600
Subject: [PATCH 11/61] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From 67196283c84f6cf2fbe3cc3d27d0bdbb2ccc192a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:44 +0600
Subject: [PATCH 12/61] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 5fa90f31b4761c0687c6ffe42a655049ebe04934 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:52 +0600
Subject: [PATCH 13/61] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 6ae4ccf1756d74b128b3ba05bd31566958ae4a31 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:01 +0600
Subject: [PATCH 14/61] gnome-control-center: update to 3.36.3.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..53a555525b4 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=bc174d970dbeca3ee19c26019de31e9edf78dc9c4abde16e763566ee38c3691c
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 4cc0947a7fdeb718bfd746daccd0974121fca733 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:08 +0600
Subject: [PATCH 15/61] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From d321073a33bc67b10d615ffc871bce6af84858e0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:27 +0600
Subject: [PATCH 16/61] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From b2f94cb900086f1e33b6dae46aa944b3f0a39d91 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:36 +0600
Subject: [PATCH 17/61] gnome-initial-setup: update to 3.36.3.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..caa33c2695e 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.3
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=d8a933f8c822cc293cc10b532779f8562342ae2271b929879e8f108491f4c285

From dffbbc0eced905e8f5cbd7d98156c03944f717f1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:43 +0600
Subject: [PATCH 18/61] evolution-data-server: update to 3.36.3.

---
 srcpkgs/evolution-data-server/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 4ae820be068..ebf8145f88c 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,7 +1,7 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
-revision=2
+version=3.36.3
+revision=1
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From d2b384e321f7ab662fdbe45c0f3078dd9f534e53 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:56 +0600
Subject: [PATCH 19/61] evolution: update to 3.36.3.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..d95c07eb72c 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=54e16caa286c02d4fe94b43e33abf5cd6f3a1502181bb8cf557aadc886b5ca03
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 382bc3fed11eba015520cf9775f85a30a75786f3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:04 +0600
Subject: [PATCH 20/61] evolution-ews: update to 3.36.3.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..38fd62d39e1 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=7a97a59b10f7a48a3bcf6d476c6a2c068ec5c48c546a433812691b8301752d04

From 3b4bf708360c24fb32962db1ab72056a545b8104 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:11 +0600
Subject: [PATCH 21/61] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 112c8a5751e4f634bc2836674aa589c98d6fd6cd Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:19 +0600
Subject: [PATCH 22/61] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From b3e9366198c9a2bd16eab72a052dd2cea387073c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:26 +0600
Subject: [PATCH 23/61] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 30d66f014a817a50f1e77da3d43e5ace62fbfdba Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:41 +0600
Subject: [PATCH 24/61] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index 0141d97f85d..4881056ad76 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,8 +1,8 @@
 # Template file for 'python-atspi'
 # Keep python3-atspi in sync
 pkgname=python-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From eb71d8abcc000d6faad22cdccbdaf327c74803e1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:48 +0600
Subject: [PATCH 25/61] python3-atspi: update to 2.36.0.

---
 srcpkgs/python3-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-atspi/template b/srcpkgs/python3-atspi/template
index a33a374fe18..b2360822acf 100644
--- a/srcpkgs/python3-atspi/template
+++ b/srcpkgs/python3-atspi/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-atspi'
 pkgname=python3-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From 073a803ac3a38332c13f9be5d09c3e13fd161f5b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:56 +0600
Subject: [PATCH 26/61] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 05865bf5576..09ee968b42e 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -839,9 +839,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 622347998667f6f16405ac98034082961b0d0038 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:03 +0600
Subject: [PATCH 27/61] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 69aa2cbf71f39322a3d610f09053d3db678d27a0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:10 +0600
Subject: [PATCH 28/61] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..10ab8d79264 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,13 +1,13 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
+hostmakedepends="gettext docbook-xsl glib-devel libxslt pkg-config vala"
 makedepends="dconf-devel gtk+3-devel"
 short_desc="Low-level configuration system - GTK+ editor"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From ab24d955f0b1e60bc01aa669140df5da402994df Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:16 +0600
Subject: [PATCH 29/61] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 37074cb348d..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
-revision=2
+version=2.3.4
+revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 4fad0aea4ac92aa16cd679abe29aa6412a4d60c4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:23 +0600
Subject: [PATCH 30/61] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 8fbeaf04d667f419469c34cbb24af3c8c4d182be Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:39 +0600
Subject: [PATCH 31/61] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 7af53db3a703e4427fa42e90d0626613603e1b91 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:47 +0600
Subject: [PATCH 32/61] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 09ee968b42e..ad33602b6d8 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -570,7 +570,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From ba05b1951746c3365662d8e788e17823073fca22 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:54 +0600
Subject: [PATCH 33/61] metacity: update to 3.36.1.

---
 common/shlibs                                 |  1 +
 .../patches/compositor-vulkan-fix-build.patch | 29 +++++++++++++++++++
 srcpkgs/metacity/template                     |  4 +--
 3 files changed, 32 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch

diff --git a/common/shlibs b/common/shlibs
index ad33602b6d8..74c6bf09dd9 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -572,6 +572,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
new file mode 100644
index 00000000000..960582ded7d
--- /dev/null
+++ b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
@@ -0,0 +1,29 @@
+From 99361f28c8763ea4569b5ae9876028d53ac9a234 Mon Sep 17 00:00:00 2001
+From: Alberts Muktupāvels <alberts.muktupavels@gmail.com>
+Date: Sun, 24 May 2020 13:58:51 +0300
+Subject: [PATCH] compositor-vulkan: fix build
+
+VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE enum was removed in 1.2.140.
+
+https://gitlab.gnome.org/GNOME/metacity/-/issues/10
+---
+ src/compositor/meta-compositor-vulkan.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git src/compositor/meta-compositor-vulkan.c src/compositor/meta-compositor-vulkan.c
+index b87b5194..53b7b3ff 100644
+--- src/compositor/meta-compositor-vulkan.c
++++ src/compositor/meta-compositor-vulkan.c
+@@ -810,7 +810,9 @@ device_type_to_string (VkPhysicalDeviceType type)
+         return "cpu";
+         break;
+ 
++#if VK_HEADER_VERSION < 140
+       case VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE:
++#endif
+       case VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM:
+       default:
+         break;
+-- 
+GitLab
+
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 7fb86fd964c..7e22aeab5c7 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,6 +1,6 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
 hostmakedepends="gettext gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From f0d493b99a63643a943fa6c8ca0bb0c2f941c733 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:01 +0600
Subject: [PATCH 34/61] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 78eeb8c330019961a93f2066c2636cc77516c2d4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:09 +0600
Subject: [PATCH 35/61] gnome-flashback: update to 3.36.3.

Added PAM config to enable screen locking.
---
 .../gnome-flashback/files/gnome-flashback.pam |  6 ++++
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 27 ++++++++++++------
 3 files changed, 52 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/files/gnome-flashback.pam
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/files/gnome-flashback.pam b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
new file mode 100644
index 00000000000..ebbb51dd0e8
--- /dev/null
+++ b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth       include	system-auth
+auth       optional     pam_gnome_keyring.so
+account    include	system-auth
+password   include	system-auth
+session    include	system-auth
diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..08566df5fd4 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,29 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="gettext-devel pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vinstall ${FILESDIR}/gnome-flashback.pam 644 /etc/pam.d gnome-flashback
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 9cd84986b6a279c4eb603b7692df27b606aaee42 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:24 +0600
Subject: [PATCH 36/61] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 441f472ddaca3b984f1f7ac4c20c1c421f2f7ad1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:30 +0600
Subject: [PATCH 37/61] mutter: update to 3.36.3.

---
 common/shlibs                                 |  18 +-
 .../patches/fix-cogl-egl-includes.patch       |  11 -
 srcpkgs/mutter/patches/pipewire-0.3.patch     | 521 ------------------
 srcpkgs/mutter/template                       |  27 +-
 4 files changed, 23 insertions(+), 554 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
 delete mode 100644 srcpkgs/mutter/patches/pipewire-0.3.patch

diff --git a/common/shlibs b/common/shlibs
index 74c6bf09dd9..d26c2d47dec 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3019,15 +3019,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.3_1
+libmutter-clutter-6.so mutter-3.36.3_1
+libmutter-clutter-6.so.0 mutter-3.36.3_1
+libmutter-cogl-path-6.so mutter-3.36.3_1
+libmutter-cogl-path-6.so.0 mutter-3.36.3_1
+libmutter-cogl-6.so mutter-3.36.3_1
+libmutter-cogl-6.so.0 mutter-3.36.3_1
+libmutter-cogl-pango-6.so mutter-3.36.3_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.3_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/patches/pipewire-0.3.patch b/srcpkgs/mutter/patches/pipewire-0.3.patch
deleted file mode 100644
index ebff65fba85..00000000000
--- a/srcpkgs/mutter/patches/pipewire-0.3.patch
+++ /dev/null
@@ -1,521 +0,0 @@
-Build mutter against pipewire-0.3, based on a patch at:
-https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1062
---- meson.build
-+++ meson.build
-@@ -50,7 +50,7 @@ libinput_req = '>= 1.7'
- gbm_req = '>= 10.3'
-
- # screen cast version requirements
--libpipewire_req = '>= 0.2.5'
-+libpipewire_req = '>= 0.3.0'
-
- gnome = import('gnome')
- pkg = import('pkgconfig')
-@@ -241,7 +241,7 @@ endif
-
- have_remote_desktop = get_option('remote_desktop')
- if have_remote_desktop
--  libpipewire_dep = dependency('libpipewire-0.2', version: libpipewire_req)
-+  libpipewire_dep = dependency('libpipewire-0.3', version: libpipewire_req)
- endif
-
- have_introspection = get_option('introspection')
-diff --git a/src/backends/meta-screen-cast-stream-src.c b/src/backends/meta-screen-cast-stream-src.c
-index 82c5cba436..ba1ce94a7e 100644
---- src/backends/meta-screen-cast-stream-src.c
-+++ src/backends/meta-screen-cast-stream-src.c
-@@ -29,6 +29,7 @@
- #include <spa/param/props.h>
- #include <spa/param/format-utils.h>
- #include <spa/param/video/format-utils.h>
-+#include <spa/utils/result.h>
- #include <stdint.h>
- #include <sys/mman.h>
-
-@@ -62,15 +63,6 @@ enum
-
- static guint signals[N_SIGNALS];
-
--typedef struct _MetaSpaType
--{
--  struct spa_type_media_type media_type;
--  struct spa_type_media_subtype media_subtype;
--  struct spa_type_format_video format_video;
--  struct spa_type_video_format video_format;
--  uint32_t meta_cursor;
--} MetaSpaType;
--
- typedef struct _MetaPipeWireSource
- {
-   GSource base;
-@@ -82,19 +74,19 @@ typedef struct _MetaScreenCastStreamSrcPrivate
- {
-   MetaScreenCastStream *stream;
-
-+  struct pw_context *pipewire_context;
-   struct pw_core *pipewire_core;
--  struct pw_remote *pipewire_remote;
--  struct pw_type *pipewire_type;
-   MetaPipeWireSource *pipewire_source;
--  struct spa_hook pipewire_remote_listener;
-+  struct spa_hook pipewire_core_listener;
-
-   gboolean is_enabled;
-
-   struct pw_stream *pipewire_stream;
-   struct spa_hook pipewire_stream_listener;
-+  uint32_t node_id;
-
--  MetaSpaType spa_type;
-   struct spa_video_info_raw video_format;
-+  int video_stride;
-
-   uint64_t last_frame_timestamp_us;
-
-@@ -112,8 +104,6 @@ G_DEFINE_TYPE_WITH_CODE (MetaScreenCastStreamSrc,
-                                                 meta_screen_cast_stream_src_init_initable_iface)
-                          G_ADD_PRIVATE (MetaScreenCastStreamSrc))
-
--#define PROP_RANGE(min, max) 2, (min), (max)
--
- static void
- meta_screen_cast_stream_src_get_specs (MetaScreenCastStreamSrc *src,
-                                        int                     *width,
-@@ -286,9 +276,6 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-                                                               int                      x,
-                                                               int                      y)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-
-   spa_meta_cursor->id = 1;
-@@ -300,7 +287,7 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   spa_meta_cursor->hotspot.x = 0;
-@@ -317,9 +304,6 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-                                                         int                      y,
-                                                         float                    scale)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   CoglTexture *cursor_texture;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-   int hotspot_x, hotspot_y;
-@@ -346,7 +330,7 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   meta_cursor_sprite_get_hotspot (cursor_sprite, &hotspot_x, &hotspot_y);
-@@ -382,12 +366,10 @@ static void
- add_cursor_metadata (MetaScreenCastStreamSrc *src,
-                      struct spa_buffer       *spa_buffer)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_cursor *spa_meta_cursor;
-
--  spa_meta_cursor = spa_buffer_find_meta (spa_buffer, spa_type->meta_cursor);
-+  spa_meta_cursor = spa_buffer_find_meta_data (spa_buffer, SPA_META_Cursor,
-+                                               sizeof (*spa_meta_cursor));
-   if (spa_meta_cursor)
-     meta_screen_cast_stream_src_set_cursor_metadata (src, spa_meta_cursor);
- }
-@@ -447,14 +429,14 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-     {
-       data = spa_buffer->datas[0].data;
-     }
--  else if (spa_buffer->datas[0].type == priv->pipewire_type->data.MemFd)
-+  else if (spa_buffer->datas[0].type == SPA_DATA_MemFd)
-     {
-       map = mmap (NULL, spa_buffer->datas[0].maxsize + spa_buffer->datas[0].mapoffset,
-                   PROT_READ | PROT_WRITE, MAP_SHARED,
-                   spa_buffer->datas[0].fd, 0);
-       if (map == MAP_FAILED)
-         {
--          g_warning ("Failed to mmap pipewire stream buffer: %s\n",
-+          g_warning ("Failed to mmap pipewire stream buffer: %s",
-                      strerror (errno));
-           return;
-         }
-@@ -469,28 +451,30 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-
-   if (meta_screen_cast_stream_src_record_frame (src, data))
-     {
--      struct spa_meta_video_crop *spa_meta_video_crop;
-+      struct spa_meta_region *spa_meta_video_crop;
-
-       spa_buffer->datas[0].chunk->size = spa_buffer->datas[0].maxsize;
-+      spa_buffer->datas[0].chunk->stride = priv->video_stride;
-
-       /* Update VideoCrop if needed */
-       spa_meta_video_crop =
--        spa_buffer_find_meta (spa_buffer, priv->pipewire_type->meta.VideoCrop);
-+        spa_buffer_find_meta_data (spa_buffer, SPA_META_VideoCrop,
-+                                   sizeof (*spa_meta_video_crop));
-       if (spa_meta_video_crop)
-         {
-           if (meta_screen_cast_stream_src_get_videocrop (src, &crop_rect))
-             {
--              spa_meta_video_crop->x = crop_rect.x;
--              spa_meta_video_crop->y = crop_rect.y;
--              spa_meta_video_crop->width = crop_rect.width;
--              spa_meta_video_crop->height = crop_rect.height;
-+              spa_meta_video_crop->region.position.x = crop_rect.x;
-+              spa_meta_video_crop->region.position.y = crop_rect.y;
-+              spa_meta_video_crop->region.size.width = crop_rect.width;
-+              spa_meta_video_crop->region.size.height = crop_rect.height;
-             }
-           else
-             {
--              spa_meta_video_crop->x = 0;
--              spa_meta_video_crop->y = 0;
--              spa_meta_video_crop->width = priv->stream_width;
--              spa_meta_video_crop->height = priv->stream_height;
-+              spa_meta_video_crop->region.position.x = 0;
-+              spa_meta_video_crop->region.position.y = 0;
-+              spa_meta_video_crop->region.size.width = priv->stream_width;
-+              spa_meta_video_crop->region.size.height = priv->stream_height;
-             }
-         }
-     }
-@@ -555,7 +539,6 @@ on_stream_state_changed (void                 *data,
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  uint32_t node_id;
-
-   switch (state)
-     {
-@@ -563,14 +546,12 @@ on_stream_state_changed (void                 *data,
-       g_warning ("pipewire stream error: %s", error_message);
-       meta_screen_cast_stream_src_notify_closed (src);
-       break;
--    case PW_STREAM_STATE_CONFIGURE:
--      node_id = pw_stream_get_node_id (priv->pipewire_stream);
--      g_signal_emit (src, signals[READY], 0, (unsigned int) node_id);
--      break;
--    case PW_STREAM_STATE_UNCONNECTED:
--    case PW_STREAM_STATE_CONNECTING:
--    case PW_STREAM_STATE_READY:
-     case PW_STREAM_STATE_PAUSED:
-+      if (priv->node_id == SPA_ID_INVALID && priv->pipewire_stream)
-+        {
-+          priv->node_id = pw_stream_get_node_id (priv->pipewire_stream);
-+          g_signal_emit (src, signals[READY], 0, (unsigned int) priv->node_id);
-+        }
-       if (meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_disable (src);
-       break;
-@@ -578,68 +559,69 @@ on_stream_state_changed (void                 *data,
-       if (!meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_enable (src);
-       break;
-+    case PW_STREAM_STATE_UNCONNECTED:
-+    case PW_STREAM_STATE_CONNECTING:
-+      break;
-     }
- }
-
- static void
--on_stream_format_changed (void                 *data,
--                          const struct spa_pod *format)
-+on_stream_param_changed (void                 *data,
-+                         uint32_t              id,
-+                         const struct spa_pod *format)
- {
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   uint8_t params_buffer[1024];
-   int32_t width, height, stride, size;
-   struct spa_pod_builder pod_builder;
-   const struct spa_pod *params[3];
-   const int bpp = 4;
-
--  if (!format)
--    {
--      pw_stream_finish_format (priv->pipewire_stream, 0, NULL, 0);
--      return;
--    }
-+  if (!format || id != SPA_PARAM_Format)
-+    return;
-
-   spa_format_video_raw_parse (format,
--                              &priv->video_format,
--                              &priv->spa_type.format_video);
-+                              &priv->video_format);
-
-   width = priv->video_format.size.width;
-   height = priv->video_format.size.height;
-   stride = SPA_ROUND_UP_N (width * bpp, 4);
-   size = height * stride;
-
-+  priv->video_stride = stride;
-+
-   pod_builder = SPA_POD_BUILDER_INIT (params_buffer, sizeof (params_buffer));
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idBuffers, pipewire_type->param_buffers.Buffers,
--    ":", pipewire_type->param_buffers.size, "i", size,
--    ":", pipewire_type->param_buffers.stride, "i", stride,
--    ":", pipewire_type->param_buffers.buffers, "iru", 16, PROP_RANGE (2, 16),
--    ":", pipewire_type->param_buffers.align, "i", 16);
--
--  params[1] = spa_pod_builder_object (
-+    SPA_TYPE_OBJECT_ParamBuffers, SPA_PARAM_Buffers,
-+    SPA_PARAM_BUFFERS_buffers, SPA_POD_CHOICE_RANGE_Int (16, 2, 16),
-+    SPA_PARAM_BUFFERS_blocks, SPA_POD_Int (1),
-+    SPA_PARAM_BUFFERS_size, SPA_POD_Int (size),
-+    SPA_PARAM_BUFFERS_stride, SPA_POD_Int (stride),
-+    SPA_PARAM_BUFFERS_align, SPA_POD_Int (16));
-+
-+  params[1] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", pipewire_type->meta.VideoCrop,
--    ":", pipewire_type->param_meta.size, "i", sizeof (struct spa_meta_video_crop));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_VideoCrop),
-+    SPA_PARAM_META_size, SPA_POD_Int (sizeof (struct spa_meta_region)));
-
--  params[2] = spa_pod_builder_object (
-+  params[2] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", priv->spa_type.meta_cursor,
--    ":", pipewire_type->param_meta.size, "i", CURSOR_META_SIZE (64, 64));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_Cursor),
-+    SPA_PARAM_META_size, SPA_POD_Int (CURSOR_META_SIZE (64, 64)));
-
--  pw_stream_finish_format (priv->pipewire_stream, 0,
--                           params, G_N_ELEMENTS (params));
-+  pw_stream_update_params (priv->pipewire_stream, params, G_N_ELEMENTS (params));
- }
-
- static const struct pw_stream_events stream_events = {
-   PW_VERSION_STREAM_EVENTS,
-   .state_changed = on_stream_state_changed,
--  .format_changed = on_stream_format_changed,
-+  .param_changed = on_stream_param_changed,
- };
-
- static struct pw_stream *
-@@ -652,8 +634,6 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   uint8_t buffer[1024];
-   struct spa_pod_builder pod_builder =
-     SPA_POD_BUILDER_INIT (buffer, sizeof (buffer));
--  MetaSpaType *spa_type = &priv->spa_type;
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   float frame_rate;
-   MetaFraction frame_rate_fraction;
-   struct spa_fraction max_framerate;
-@@ -661,7 +641,9 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   const struct spa_pod *params[1];
-   int result;
-
--  pipewire_stream = pw_stream_new (priv->pipewire_remote,
-+  priv->node_id = SPA_ID_INVALID;
-+
-+  pipewire_stream = pw_stream_new (priv->pipewire_core,
-                                    "meta-screen-cast-src",
-                                    NULL);
-   if (!pipewire_stream)
-@@ -682,17 +664,17 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   max_framerate = SPA_FRACTION (frame_rate_fraction.num,
-                                 frame_rate_fraction.denom);
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idEnumFormat, pipewire_type->spa_format,
--    "I", spa_type->media_type.video,
--    "I", spa_type->media_subtype.raw,
--    ":", spa_type->format_video.format, "I", spa_type->video_format.BGRx,
--    ":", spa_type->format_video.size, "R", &SPA_RECTANGLE (priv->stream_width,
--                                                           priv->stream_height),
--    ":", spa_type->format_video.framerate, "F", &SPA_FRACTION (0, 1),
--    ":", spa_type->format_video.max_framerate, "Fru", &max_framerate,
--                                                      PROP_RANGE (&min_framerate,
-+    SPA_TYPE_OBJECT_Format, SPA_PARAM_EnumFormat,
-+    SPA_FORMAT_mediaType, SPA_POD_Id (SPA_MEDIA_TYPE_video),
-+    SPA_FORMAT_mediaSubtype, SPA_POD_Id (SPA_MEDIA_SUBTYPE_raw),
-+    SPA_FORMAT_VIDEO_format, SPA_POD_Id (SPA_VIDEO_FORMAT_BGRx),
-+    SPA_FORMAT_VIDEO_size, SPA_POD_Rectangle (&SPA_RECTANGLE (priv->stream_width,
-+                                                              priv->stream_height)),
-+    SPA_FORMAT_VIDEO_framerate, SPA_POD_Fraction (&SPA_FRACTION (0, 1)),
-+    SPA_FORMAT_VIDEO_maxFramerate, SPA_POD_CHOICE_RANGE_Fraction (&max_framerate,
-+                                                                  &min_framerate,
-                                                                   &max_framerate));
-
-   pw_stream_add_listener (pipewire_stream,
-@@ -702,7 +684,7 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-
-   result = pw_stream_connect (pipewire_stream,
-                               PW_DIRECTION_OUTPUT,
--                              NULL,
-+                              SPA_ID_INVALID,
-                               (PW_STREAM_FLAG_DRIVER |
-                                PW_STREAM_FLAG_MAP_BUFFERS),
-                               params, G_N_ELEMENTS (params));
-@@ -717,40 +699,18 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
- }
-
- static void
--on_state_changed (void                 *data,
--                  enum pw_remote_state  old,
--                  enum pw_remote_state  state,
--                  const char           *error_message)
-+on_core_error (void       *data,
-+               uint32_t    id,
-+	       int         seq,
-+	       int         res,
-+	       const char *message)
- {
-   MetaScreenCastStreamSrc *src = data;
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_stream *pipewire_stream;
--  GError *error = NULL;
-
--  switch (state)
--    {
--    case PW_REMOTE_STATE_ERROR:
--      g_warning ("pipewire remote error: %s\n", error_message);
--      meta_screen_cast_stream_src_notify_closed (src);
--      break;
--    case PW_REMOTE_STATE_CONNECTED:
--      pipewire_stream = create_pipewire_stream (src, &error);
--      if (!pipewire_stream)
--        {
--          g_warning ("Could not create pipewire stream: %s", error->message);
--          g_error_free (error);
--          meta_screen_cast_stream_src_notify_closed (src);
--        }
--      else
--        {
--          priv->pipewire_stream = pipewire_stream;
--        }
--      break;
--    case PW_REMOTE_STATE_UNCONNECTED:
--    case PW_REMOTE_STATE_CONNECTING:
--      break;
--    }
-+  g_warning ("pipewire remote error: id:%u %s", id, message);
-+
-+  if (id == PW_ID_CORE && res == -EPIPE)
-+    meta_screen_cast_stream_src_notify_closed (src);
- }
-
- static gboolean
-@@ -793,17 +753,6 @@ static GSourceFuncs pipewire_source_funcs =
-   pipewire_loop_source_finalize
- };
-
--static void
--init_spa_type (MetaSpaType         *type,
--               struct spa_type_map *map)
--{
--  spa_type_media_type_map (map, &type->media_type);
--  spa_type_media_subtype_map (map, &type->media_subtype);
--  spa_type_format_video_map (map, &type->format_video);
--  spa_type_video_format_map (map, &type->video_format);
--  type->meta_cursor = spa_type_map_get_id(map, SPA_TYPE_META__Cursor);
--}
--
- static MetaPipeWireSource *
- create_pipewire_source (void)
- {
-@@ -829,9 +778,9 @@ create_pipewire_source (void)
-   return pipewire_source;
- }
-
--static const struct pw_remote_events remote_events = {
--  PW_VERSION_REMOTE_EVENTS,
--  .state_changed = on_state_changed,
-+static const struct pw_core_events core_events = {
-+  PW_VERSION_CORE_EVENTS,
-+  .error = on_core_error,
- };
-
- static gboolean
-@@ -851,37 +800,31 @@ meta_screen_cast_stream_src_initable_init (GInitable     *initable,
-       return FALSE;
-     }
-
--  priv->pipewire_core = pw_core_new (priv->pipewire_source->pipewire_loop,
--                                     NULL);
--  if (!priv->pipewire_core)
-+  priv->pipewire_context = pw_context_new (priv->pipewire_source->pipewire_loop,
-+                                           NULL, 0);
-+  if (!priv->pipewire_context)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Failed to create pipewire core");
-+                   "Failed to create pipewire context");
-       return FALSE;
-     }
-
--  priv->pipewire_remote = pw_remote_new (priv->pipewire_core, NULL, 0);
--  if (!priv->pipewire_remote)
-+  priv->pipewire_core = pw_context_connect (priv->pipewire_context, NULL, 0);
-+  if (!priv->pipewire_core)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't creat pipewire remote");
-+                   "Couldn't connect pipewire context");
-       return FALSE;
-     }
-
--  pw_remote_add_listener (priv->pipewire_remote,
--                          &priv->pipewire_remote_listener,
--                          &remote_events,
--                          src);
-+  pw_core_add_listener (priv->pipewire_core,
-+                        &priv->pipewire_core_listener,
-+                        &core_events,
-+                        src);
-
--  priv->pipewire_type = pw_core_get_type (priv->pipewire_core);
--  init_spa_type (&priv->spa_type, priv->pipewire_type->map);
--
--  if (pw_remote_connect (priv->pipewire_remote) != 0)
--    {
--      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't connect pipewire remote");
--      return FALSE;
--    }
-+  priv->pipewire_stream = create_pipewire_stream (src, error);
-+  if (!priv->pipewire_stream)
-+    return FALSE;
-
-   return TRUE;
- }
-@@ -912,8 +855,8 @@ meta_screen_cast_stream_src_finalize (GObject *object)
-     meta_screen_cast_stream_src_disable (src);
-
-   g_clear_pointer (&priv->pipewire_stream, pw_stream_destroy);
--  g_clear_pointer (&priv->pipewire_remote, pw_remote_destroy);
--  g_clear_pointer (&priv->pipewire_core, pw_core_destroy);
-+  g_clear_pointer (&priv->pipewire_core, pw_core_disconnect);
-+  g_clear_pointer (&priv->pipewire_context, pw_context_destroy);
-   g_source_destroy (&priv->pipewire_source->base);
-
-   G_OBJECT_CLASS (meta_screen_cast_stream_src_parent_class)->finalize (object);
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 806a3bef9f0..132cd9dd645 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,35 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=3
+version=3.36.3
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+ -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland
+ -Dxwayland_initfd=disabled"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From cdd1d07a610b76eb029dd0819866cea0f2225fc4 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:38 +0600
Subject: [PATCH 38/61] gnome-shell: update to 3.36.3.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..ee4c6288f5f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb

From a470ac0781642e42a7a9364023ca7983a48221d6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:46 +0600
Subject: [PATCH 39/61] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 534cb558d985f289afee20a87c000fb07a4c0961 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:53 +0600
Subject: [PATCH 40/61] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..16bc43fd0e7 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -13,15 +13,15 @@ configure_args="$(vopt_enable gir introspection)
 hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
-depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+depends="gnome-settings-daemon gnome-shell gnome-session gnome-themes-extra
+ gsettings-desktop-schemas xorg-server xorg-server-xwayland xrdb"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 6efbf1505adee8cbde11dcb580c0dcaf639fea7f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:00 +0600
Subject: [PATCH 41/61] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From f6e7e0429752bddac5da69994cc6b5d353630956 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:07 +0600
Subject: [PATCH 42/61] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 7aea638e230a29e6a327bec15938d1bf4c0f8b40 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:14 +0600
Subject: [PATCH 43/61] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From ec88a8d0e56897b22c9cd2f8e95f31e391caf979 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:21 +0600
Subject: [PATCH 44/61] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 3447e20b9a33c436d548b19f5a4d670ce30acac2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:28 +0600
Subject: [PATCH 45/61] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 879d1a90e50bd87dcab2e9876d465982168dde8d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:36 +0600
Subject: [PATCH 46/61] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From e6acf9af51331ec0b18957586fb74db05eec873e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:46 +0600
Subject: [PATCH 47/61] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 51554695572b4b8beee32181b9c817773a4c1e3b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:54 +0600
Subject: [PATCH 48/61] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 7658baf9f7eced5ba2101744149058d7c85b778d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:01 +0600
Subject: [PATCH 49/61] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 95a4a77283e04e64613045a35ec7bd2574db496a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:09 +0600
Subject: [PATCH 50/61] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 09820b27f887dd61d469dc09c45a7ed42a890dd5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 7 Jul 2020 03:19:35 +0600
Subject: [PATCH 51/61] evince: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index 4035f15c690..e2336631cd4 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.7
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

From 6248136914834f209bef3934ffceb8e54f15b4e1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 16 Jun 2020 22:56:53 +0700
Subject: [PATCH 52/61] gnome-desktop: add do_check

---
 srcpkgs/gnome-desktop/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index c1a7408c207..ccd7c56569a 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -11,6 +11,7 @@ makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
  libxkbfile-devel libXrandr-devel gdk-pixbuf-devel"
 depends="bubblewrap gsettings-desktop-schemas iso-codes xkeyboard-config"
+checkdepends="$depends xorg-server-xvfb"
 short_desc="GNOME desktop management utilities"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
@@ -21,6 +22,22 @@ checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 build_options="gir"
 build_options_default="gir"
 
+do_check() {
+	# there is still 1 test fail for he_IL locale in musl
+	if test "$XBPS_TARGET_LIBC" != musl; then
+		local _pid
+		Xvfb :1 -screen 0 1366x768x24 &
+		_pid=$!
+		trap "kill $_pid" EXIT
+		trap 'exit 1' INT HUP TERM
+		export DISPLAY=:1
+		ninja -C build test
+		trap - EXIT INT HUP TERM
+		kill $_pid
+	fi
+}
+
+
 gnome-desktop-devel_package() {
 	depends="gtk+3-devel gsettings-desktop-schemas-devel>=3.12
 	 gdk-pixbuf-devel iso-codes libX11-devel libglib-devel libseccomp-devel

From 60ebb35173a649413401e0ef1238f7e86b7fc834 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 06:25:55 +0700
Subject: [PATCH 53/61] gnome-settings-daemon: fix checkdepends

---
 srcpkgs/gnome-settings-daemon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index 9ceb1d13de9..f4539a72d43 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -12,7 +12,7 @@ makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-dev
  xf86-input-wacom-devel"
 depends="hicolor-icon-theme pulseaudio"
 checkdepends="elogind libnotify python3-dbusmock python3-gobject
- python3-pycodestyle"
+ python3-pycodestyle which hwids eudev"
 short_desc="GNOME settings daemon"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"

From 0ce75b2626b1b890b59280403de2b2279c60c48d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 07:44:12 +0700
Subject: [PATCH 54/61] mutter: skip do_check

---
 srcpkgs/mutter/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 132cd9dd645..117b59a29a9 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -22,6 +22,10 @@ checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
 shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
  libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
+do_check() {
+	msg_warn "xvfb does not work\n"
+}
+
 mutter-devel_package() {
 	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
 	 libX11-devel libXtst-devel mutter-${version}_${revision}"

From 6e5776131a3024a4e9b584ce818f65890c002ae4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 21 Jun 2020 22:53:03 +0700
Subject: [PATCH 55/61] evolution-data-server: split vala build option from gir

---
 srcpkgs/evolution-data-server/template | 54 ++++++++++++--------------
 1 file changed, 25 insertions(+), 29 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index ebf8145f88c..822d59e6922 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -2,45 +2,38 @@
 pkgname=evolution-data-server
 version=3.36.3
 revision=1
+_basever=${version%.*}
 build_style=cmake
-build_helper=gir
+build_helper="gir qemu"
 configure_args="-DENABLE_UOA=OFF
- $(vopt_if gir '-DENABLE_INTROSPECTION=ON -DENABLE_VALA_BINDINGS=ON' '-DENABLE_WEATHER=OFF')"
+ $(vopt_if gir -DENABLE_INTROSPECTION=ON)
+ $(vopt_if vala -DENABLE_VALA_BINDINGS=ON)"
 hostmakedepends="flex glib-devel gperf intltool pkg-config libglib-devel
- $(vopt_if gir 'gobject-introspection')"
-makedepends="boost-devel libcanberra-devel libgdata-devel $(vopt_if gir libgweather-devel)
- libical-devel libsecret-devel mit-krb5-devel $(vopt_if gir 'vala-devel') webkit2gtk-devel"
-depends="$(vopt_if gir libgweather) libsoup-gnome"
+ $(vopt_if vala vala)"
+makedepends="boost-devel libcanberra-devel libgdata-devel libical-devel
+ libsecret-devel mit-krb5-devel webkit2gtk-devel libgweather-devel
+ $(vopt_if vala vala-devel)"
+depends="libgweather libsoup-gnome dbus tzdata"
+checkdepends="$depends"
 short_desc="Centralized access to appointments and contacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
-changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
-distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+changelog="https://raw.githubusercontent.com/GNOME/$pkgname/gnome-${_basever/./-}/NEWS"
+distfiles="${GNOME_SITE}/${pkgname}/${_basever}/${pkgname}-${version}.tar.xz"
 checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
-build_options="gir"
-if [ -z "$CROSS_BUILD" ]; then
-	build_options_default="gir"
-fi
+build_options="gir vala"
+build_options_default="gir vala"
 
-# cmake perfomrms 2 checks using binary runtime, about iconv and sfrtime.
-# musl (1.1.16) does not support "ISO-2022-JP" encoding (see its roadmap),
-# although evolution-data-server is fine with musl.
-# If crossbuild, cmake let disabling runtime checks via specific directives.
-# test iconv-detect.c also generates iconv-detect.h that is required for build.
-# So completly disable test from iconv-detect.c (cmake.patch file) and
-# use a cmake cache file on crossbuild to disable sfrtime running test.
-if [ "$CROSS_BUILD" ]; then
-	configure_args+=" -C disableRuntimeTests.cmake"
-fi
-
-pre_configure() {
-	mkdir -p build
-	cp ${FILESDIR}/iconv-detect.h ${wrksrc}/build/.
-	if [ "$CROSS_BUILD" ]; then
-		cp ${FILESDIR}/disableRuntimeTests.cmake ${wrksrc}/build/.
-	fi
+do_check() {
+	cd build
+	# TODO This test is problematic, first run usually fail
+	# Signify something wrong with evolution-data-server on first run
+	ctest -R test-book-client-custom-summary || true
+	# make test run ctest --force-new-ctest-process which is problematic
+	# noone should run multiple instance of evolution-data-server irl.
+	ctest
 }
 
 post_install() {
@@ -49,6 +42,7 @@ post_install() {
 
 evolution-data-server-devel_package() {
 	depends="sqlite-devel mit-krb5-devel nss-devel nspr-devel libical-devel
+
 		libldap-devel libgdata-devel>=0.15 libsecret-devel libglib-devel
 		libsoup-devel gtk+3-devel libxml2-devel gnome-desktop-devel
 		${sourcepkg}>=${version}_${revision}"
@@ -59,6 +53,8 @@ evolution-data-server-devel_package() {
 		vmove "usr/lib/*.so"
 		if [ "$build_option_gir" ]; then
 			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
 			vmove usr/share/vala
 		fi
 	}

From 03452c8f7fe24587d84a6db90a03c240c1726528 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:51:31 +0700
Subject: [PATCH 56/61] folks: add build option gir and vala

Disable gir and vala in evolution-data-server will make folks failed to
be built.

Either enable both of them, or disable both of them.
---
 srcpkgs/folks/template | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index e21ca9c1077..6dabeadafaf 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -5,10 +5,11 @@ revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Db_lto=false"
-hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
- gobject-introspection evolution-data-server-devel"
+hostmakedepends="pkg-config intltool glib-devel python3 python3-dbusmock
+ evolution-data-server-devel $(vopt_if vala vala)"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
- libgee08-devel evolution-data-server-devel tracker-devel"
+ libgee08-devel evolution-data-server-devel tracker-devel
+ $(vopt_if vala vala-devel)"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
@@ -17,6 +18,9 @@ homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
+build_options="gir vala"
+build_options_default="gir vala"
+
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
@@ -24,7 +28,11 @@ folks-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove "usr/lib/*.so"
-		vmove usr/share/vala
-		vmove usr/share/gir-1.0
+		if [ "$build_option_gir" ]; then
+			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
+			vmove usr/share/vala
+		fi
 	}
 }

From 4ebfce54c5cb1a512a4295a13ac12ec2eb23fbc3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:52:50 +0700
Subject: [PATCH 57/61] nautilus: correct checkdepends

---
 srcpkgs/nautilus/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 94cb10492ca..c6faf7bf3d7 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -11,7 +11,7 @@ makedepends="exempi-devel gnome-autoar-devel gnome-desktop-devel gtk+3-devel
  libX11-devel libxml2-devel tracker-devel gst-plugins-base1-devel"
 depends="desktop-file-utils gsettings-desktop-schemas hicolor-icon-theme
  tracker-miners tracker"
-checkdepends="tracker"
+checkdepends="tracker tracker-miners"
 short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"

From 3a9e1f07159ffb219616ca19f627c10920ebf5df Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:53:14 +0700
Subject: [PATCH 58/61] tracker: add tar to checkdepends

---
 srcpkgs/tracker/template | 1 +
 1 file changed, 1 insertion(+)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index e814f77c711..19338db45e1 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -11,6 +11,7 @@ hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
+checkdepends="tar"
 short_desc="Personal search tool and storage system"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"

From 71eeeb812970d998069c5d92c463cc704193459f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:53:55 +0700
Subject: [PATCH 59/61] tracker-miners: simplify template

---
 srcpkgs/tracker-miners/template | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/tracker-miners/template b/srcpkgs/tracker-miners/template
index 020c124f322..a5ad65d7441 100644
--- a/srcpkgs/tracker-miners/template
+++ b/srcpkgs/tracker-miners/template
@@ -3,6 +3,7 @@ pkgname=tracker-miners
 version=2.3.1
 revision=3
 build_style=meson
+# Missing libgrss
 configure_args="-Dtracker_core=system -Ddocs=false -Dextract=true
  -Dfunctional_tests=false -Dcue=enabled -Dexif=enabled -Dflac=enabled
  -Dgif=enabled -Dgsf=enabled -Diptc=enabled -Diso=enabled -Djpeg=enabled
@@ -17,14 +18,10 @@ makedepends="tracker-devel ffmpeg-devel dbus-devel exempi-devel libflac-devel
  libexif-devel libgsf-devel libgxps-devel libiptcdata-devel libjpeg-turbo-devel
  libosinfo-devel libpng-devel libseccomp-devel tiff-devel libxml2-devel
  libvorbis-devel poppler-glib-devel taglib-devel totem-pl-parser-devel
- upower-devel zlib-devel gst-plugins-base1-devel giflib-devel"
+ upower-devel zlib-devel gst-plugins-base1-devel giflib-devel libharfbuzz"
 short_desc="Data miners for tracker"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://developer.gnome.org/libtracker-miner/stable"
 distfiles="${GNOME_SITE}/tracker-miners/${version%.*}/tracker-miners-${version}.tar.xz"
 checksum=7b1de06a7a79ea1c7813c8a21f8cd1c55f2b95f799cf9f47f0204f3be8a590e0
-
-# Missing libgrss
-configure_args+=" -Dminer_rss=false"
-makedepends+=" libharfbuzz"

From b8159735eb7ba05c9ad7389c13c18cda533763f9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 24 Jun 2020 23:18:40 +0700
Subject: [PATCH 60/61] gnome-shell: add do_check

---
 srcpkgs/gnome-shell/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index ee4c6288f5f..deb922a09ad 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -15,6 +15,7 @@ makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  network-manager-applet-devel polkit-devel pulseaudio-devel
  startup-notification-devel telepathy-logger-devel gnome-autoar-devel"
 depends="caribou elogind glxinfo gnome-control-center gsettings-desktop-schemas upower"
+checkdepends="$depends accountsservice gdm xorg-server-xvfb pipewire mesa-dri dbus-x11"
 short_desc="GNOME core user interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
@@ -22,3 +23,19 @@ homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb
+
+do_check() {
+	local _pid
+	export DISPLAY=:1
+	export XDG_RUNTIME_DIR=/tmp
+	Xvfb :1 -screen 0 1366x768x24 &
+	_pid=$!
+	trap "kill $_pid" EXIT
+	trap 'exit 1' INT HUP TERM
+	eval $(dbus-launch)
+	export DBUS_SESSION_BUS_ADDRESS
+	ninja test -C build
+	# trap is hanging on normal exit, dbus?
+	trap - EXIT INT HUP TERM
+	kill $_pid || true
+}

From 86b3600ff259543d5950328d2b5f99e016a2284b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Thu, 2 Jul 2020 09:17:31 +0700
Subject: [PATCH 61/61] fixup! evolution-data-server: split vala build option
 from gir

[ci skip]
---
 srcpkgs/evolution-data-server/template | 42 +++++++++++++++++++++++++-
 1 file changed, 41 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 822d59e6922..705ce093115 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -26,6 +26,47 @@ checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 build_options="gir vala"
 build_options_default="gir vala"
 
+pre_build() {
+	[ -z "$CROSS_BUILD" ] && return 0
+	local _dir=
+	for _dir in libebackend libedataserver libedataserverui \
+		addressbook/libebook-contacts \
+		addressbook/libedata-book \
+		addressbook/libebook \
+		calendar/libecal \
+		calendar/libedata-cal
+	do
+		ln -rsf $wrksrc/build/src/private/libedbus-private.so build/src/$_dir
+	done
+
+	for _dir in addressbook/libebook-contacts \
+		calendar/libecal calendar/libedata-cal
+	do
+		ln -sf ../../camel/libcamel-1.2.so.62 build/src/$_dir
+	done
+
+	for _dir in addressbook/libedata-book addressbook/libebook \
+		calendar/libedata-cal
+	do
+		ln -sf ../../libebackend/libebackend-1.2.so.10 build/src/$_dir
+	done
+
+	ln -sf ../../libedataserver/libedataserver-1.2.so.24 build/src/calendar/libecal
+	return
+	# ideally qemu should pick below LD_LIBARY_PATH
+	# instead of above shenanigans
+	# But it doesn't work for now, left it here as future reference.
+	# TODO figure a better methods
+	_builddir=$wrksrc/build
+	_ld_library_path=$_builddir:$_builddir/src
+	for _dir in libedataserver private camel
+	do
+		_ld_library_path+=":$_builddir/src/$_dir"
+	done
+	_ld_library_path+=":$XBPS_CROSS_BASE/usr/lib"
+	export QEMU_SET_ENV=LD_LIBARY_PATH=$_ld_library_path
+}
+
 do_check() {
 	cd build
 	# TODO This test is problematic, first run usually fail
@@ -42,7 +83,6 @@ post_install() {
 
 evolution-data-server-devel_package() {
 	depends="sqlite-devel mit-krb5-devel nss-devel nspr-devel libical-devel
-
 		libldap-devel libgdata-devel>=0.15 libsecret-devel libglib-devel
 		libsoup-devel gtk+3-devel libxml2-devel gnome-desktop-devel
 		${sourcepkg}>=${version}_${revision}"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (76 preceding siblings ...)
  2020-07-06 21:20 ` mnabid
@ 2020-07-07 15:20 ` mnabid
  2020-07-12  8:53 ` sgn
                   ` (9 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: mnabid @ 2020-07-07 15:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1836 bytes --]

There is an updated pull request by mnabid against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

gnome 3.36 updates
<details>
<summary><i>List of updates : </i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.3
 * evolution -> 3.36.3
 * evolution-data-server -> 3.36.3
 * evolution-ews -> 3.36.3
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.3
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.3
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.3
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.3
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.3
 * nautilus -> 3.36.3
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * python3-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built natively in `x86_64` and crossbuilt for `armv7l`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 757433 bytes --]

From 0de15fad38407ba9f0dc437625469f9bb9c8538e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:42:53 +0600
Subject: [PATCH 01/61] gnome-desktop: update to 3.36.2.

Closes: #21382
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index ed1906bbb78..71790a104fb 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1182,7 +1182,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From dbc703c8cace890158c0c4f354fa926788e155c6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:18 +0600
Subject: [PATCH 02/61] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From c8aef517ead8211e871e989e7647000072c32b88 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:25 +0600
Subject: [PATCH 03/61] nautilus: update to 3.36.3.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..94cb10492ca 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=b6cafc7ab1e70a64383de391b6097fcccbf36b208f8502d8c46423224fd30ef8
 
 build_options="gir"
 build_options_default="gir"

From e54b025b351ee07e1e46c2e0d03c9e16c272cb9a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:32 +0600
Subject: [PATCH 04/61] gnome-music: update to 3.36.3.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..2273ac1ca16 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.3
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=54f8d240f8995f4cff4dce5e1cbdc60befc81d79bf72c1e4fd807ed05c114237
 lib32disabled=yes

From 7dedd11710e807caf7739926a61109de0bb3cc97 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:38 +0600
Subject: [PATCH 05/61] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From d4aaa48e5120313e61f52e66b21db467ec3c039b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:51 +0600
Subject: [PATCH 06/61] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index e4cacb7079e..cfa1cf57594 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 5d0f3bd6d4a864fc3791a15227ab40c72b670c42 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:07 +0600
Subject: [PATCH 07/61] gnome-maps: update to 3.36.2.

... and unmark nocross.
---
 common/shlibs               | 1 +
 srcpkgs/gnome-maps/template | 8 ++++----
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 71790a104fb..05865bf5576 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -622,6 +622,7 @@ libcanberra-gtk3.so.0 libcanberra-gtk3-0.30_6
 libgtop-2.0.so.11 libgtop-2.38.0_1
 librarian.so.0 rarian-0.8.1_1
 libmusikcore.so musikcube-0.60.1_1
+libgnome-maps.so.0 gnome-maps-3.36.2_1
 libgnome-menu-3.so.0 gnome-menus-2.91.6_1
 libart_lgpl_2.so.2 libart-2.3.20_1
 libgnomecanvas-2.so.0 libgnomecanvas-2.30.1_1
diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..a67d84f4396 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,9 +1,10 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
+build_helper="gir"
+hostmakedepends="glib-devel gjs-devel intltool pkg-config AppStream"
 makedepends="folks-devel geoclue2-devel geocode-glib-devel gjs-devel
  gnome-desktop-devel libchamplain-devel rest-devel"
 depends="geoclue2 gfbgraph gjs"
@@ -12,5 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
-nocross="evolution-dataserver cross gir doesn't work"
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784

From 4c70b3e6c1987e6f41b84871fc7b9cdad00f081b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:14 +0600
Subject: [PATCH 08/61] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 1e8f3aed39fbef3cc165538bc9e0c71cf30ace93 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:21 +0600
Subject: [PATCH 09/61] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From 0252be5b5c9dded474984c1c71bebd9a5f85b53a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:29 +0600
Subject: [PATCH 10/61] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From c1f68921cdb5073aa4cc5b336e153e5719ac3e5b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:36 +0600
Subject: [PATCH 11/61] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From a69907c5ea7849d7f56c045845856da970bf849e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:44 +0600
Subject: [PATCH 12/61] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 41f4aa159dcef478c2106c76b1667a2bebe9293e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:52 +0600
Subject: [PATCH 13/61] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 0af4c2a476aeefc1efd457c3ceed0c9231e3f8b0 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:01 +0600
Subject: [PATCH 14/61] gnome-control-center: update to 3.36.3.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..53a555525b4 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=bc174d970dbeca3ee19c26019de31e9edf78dc9c4abde16e763566ee38c3691c
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 2ade6dc8f1a2e37f40dc59d17c20ac4ed5a7b16c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:08 +0600
Subject: [PATCH 15/61] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From 378d41e514605ea17c52d14d6310696e48495993 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:27 +0600
Subject: [PATCH 16/61] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 3b9fa250b5dc9112a0244e3c882075ca6cd06267 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:36 +0600
Subject: [PATCH 17/61] gnome-initial-setup: update to 3.36.3.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..caa33c2695e 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.3
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=d8a933f8c822cc293cc10b532779f8562342ae2271b929879e8f108491f4c285

From a262ca8b1fc2f0694e879a40601284e762db5a94 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:43 +0600
Subject: [PATCH 18/61] evolution-data-server: update to 3.36.3.

---
 srcpkgs/evolution-data-server/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 4ae820be068..ebf8145f88c 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,7 +1,7 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
-revision=2
+version=3.36.3
+revision=1
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From b22a723fc13551dab80e6f3f36837cf30db3fd3e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:56 +0600
Subject: [PATCH 19/61] evolution: update to 3.36.3.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..d95c07eb72c 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=54e16caa286c02d4fe94b43e33abf5cd6f3a1502181bb8cf557aadc886b5ca03
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From f00f24f65686b1bbec37dc762c9d001e9319b07e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:04 +0600
Subject: [PATCH 20/61] evolution-ews: update to 3.36.3.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..38fd62d39e1 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=7a97a59b10f7a48a3bcf6d476c6a2c068ec5c48c546a433812691b8301752d04

From 1f67c2bb03bef1640aba9efa55e116e2b4508f1c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:11 +0600
Subject: [PATCH 21/61] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From f9d8da7cca94caea04835318f51a3aab3f54a75b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:19 +0600
Subject: [PATCH 22/61] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From dcf34eb927202e3248ef5ef6e46f643d44872cc5 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:26 +0600
Subject: [PATCH 23/61] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From a2db6d897ce4152115dbbcd253f6310642df4815 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:41 +0600
Subject: [PATCH 24/61] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index 0141d97f85d..4881056ad76 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,8 +1,8 @@
 # Template file for 'python-atspi'
 # Keep python3-atspi in sync
 pkgname=python-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From a85936672149d12dc87eb9955465586dee89e5e7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:48 +0600
Subject: [PATCH 25/61] python3-atspi: update to 2.36.0.

---
 srcpkgs/python3-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-atspi/template b/srcpkgs/python3-atspi/template
index a33a374fe18..b2360822acf 100644
--- a/srcpkgs/python3-atspi/template
+++ b/srcpkgs/python3-atspi/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-atspi'
 pkgname=python3-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From 49ff3b560e545239ff8a26aa297acd0a1384869b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:56 +0600
Subject: [PATCH 26/61] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 05865bf5576..09ee968b42e 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -839,9 +839,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 07379fe1ae8ecbbb6163e6c29069e048672fee9c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:03 +0600
Subject: [PATCH 27/61] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 0d430be4082bce61ffb2ac80fa207e38205e86a7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:10 +0600
Subject: [PATCH 28/61] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..10ab8d79264 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,13 +1,13 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
+hostmakedepends="gettext docbook-xsl glib-devel libxslt pkg-config vala"
 makedepends="dconf-devel gtk+3-devel"
 short_desc="Low-level configuration system - GTK+ editor"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From 440fab54c93d7e89458cd740315a451c95699a45 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:16 +0600
Subject: [PATCH 29/61] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 37074cb348d..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
-revision=2
+version=2.3.4
+revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 918a9d83f93c8275c04faa3cc8cf2c012f4d3990 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:23 +0600
Subject: [PATCH 30/61] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 0657867d6df6c812f2dc9d7c9b3edc6749adb69b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:39 +0600
Subject: [PATCH 31/61] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 53c0094961af833677ffcae6fa4d43a41f596ea2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:47 +0600
Subject: [PATCH 32/61] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 09ee968b42e..ad33602b6d8 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -570,7 +570,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From dab7096286133f12c61da139a7e5b273d0f70eee Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:54 +0600
Subject: [PATCH 33/61] metacity: update to 3.36.1.

---
 common/shlibs                                 |  1 +
 .../patches/compositor-vulkan-fix-build.patch | 29 +++++++++++++++++++
 srcpkgs/metacity/template                     |  4 +--
 3 files changed, 32 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch

diff --git a/common/shlibs b/common/shlibs
index ad33602b6d8..74c6bf09dd9 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -572,6 +572,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
new file mode 100644
index 00000000000..960582ded7d
--- /dev/null
+++ b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
@@ -0,0 +1,29 @@
+From 99361f28c8763ea4569b5ae9876028d53ac9a234 Mon Sep 17 00:00:00 2001
+From: Alberts Muktupāvels <alberts.muktupavels@gmail.com>
+Date: Sun, 24 May 2020 13:58:51 +0300
+Subject: [PATCH] compositor-vulkan: fix build
+
+VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE enum was removed in 1.2.140.
+
+https://gitlab.gnome.org/GNOME/metacity/-/issues/10
+---
+ src/compositor/meta-compositor-vulkan.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git src/compositor/meta-compositor-vulkan.c src/compositor/meta-compositor-vulkan.c
+index b87b5194..53b7b3ff 100644
+--- src/compositor/meta-compositor-vulkan.c
++++ src/compositor/meta-compositor-vulkan.c
+@@ -810,7 +810,9 @@ device_type_to_string (VkPhysicalDeviceType type)
+         return "cpu";
+         break;
+ 
++#if VK_HEADER_VERSION < 140
+       case VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE:
++#endif
+       case VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM:
+       default:
+         break;
+-- 
+GitLab
+
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 7fb86fd964c..7e22aeab5c7 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,6 +1,6 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
 hostmakedepends="gettext gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From df294fb425879cedce59841c99387c395498ac5d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:01 +0600
Subject: [PATCH 34/61] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 3a1cf0a2f228a2fdedb73ea6c7966c587e5131be Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:09 +0600
Subject: [PATCH 35/61] gnome-flashback: update to 3.36.3.

Added PAM config to enable screen locking.
---
 .../gnome-flashback/files/gnome-flashback.pam |  6 +++++
 srcpkgs/gnome-flashback/template              | 25 +++++++++++++------
 2 files changed, 23 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/files/gnome-flashback.pam

diff --git a/srcpkgs/gnome-flashback/files/gnome-flashback.pam b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
new file mode 100644
index 00000000000..ebbb51dd0e8
--- /dev/null
+++ b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth       include	system-auth
+auth       optional     pam_gnome_keyring.so
+account    include	system-auth
+password   include	system-auth
+session    include	system-auth
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..1bdcd813c4e 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,29 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	vsed -i -e "/libcompizconfig/ s/0.9.14/0.8/" configure
+}
+
+post_install() {
+	vinstall ${FILESDIR}/gnome-flashback.pam 644 /etc/pam.d gnome-flashback
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 3302a4ef61b6392cc0499d7199fb758435797e08 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:24 +0600
Subject: [PATCH 36/61] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From e6b774b354c091fc2116bd5b50df49a39806141a Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:30 +0600
Subject: [PATCH 37/61] mutter: update to 3.36.3.

---
 common/shlibs                                 |  18 +-
 .../patches/fix-cogl-egl-includes.patch       |  11 -
 srcpkgs/mutter/patches/pipewire-0.3.patch     | 521 ------------------
 srcpkgs/mutter/template                       |  27 +-
 4 files changed, 23 insertions(+), 554 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
 delete mode 100644 srcpkgs/mutter/patches/pipewire-0.3.patch

diff --git a/common/shlibs b/common/shlibs
index 74c6bf09dd9..d26c2d47dec 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3019,15 +3019,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.3_1
+libmutter-clutter-6.so mutter-3.36.3_1
+libmutter-clutter-6.so.0 mutter-3.36.3_1
+libmutter-cogl-path-6.so mutter-3.36.3_1
+libmutter-cogl-path-6.so.0 mutter-3.36.3_1
+libmutter-cogl-6.so mutter-3.36.3_1
+libmutter-cogl-6.so.0 mutter-3.36.3_1
+libmutter-cogl-pango-6.so mutter-3.36.3_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.3_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/patches/pipewire-0.3.patch b/srcpkgs/mutter/patches/pipewire-0.3.patch
deleted file mode 100644
index ebff65fba85..00000000000
--- a/srcpkgs/mutter/patches/pipewire-0.3.patch
+++ /dev/null
@@ -1,521 +0,0 @@
-Build mutter against pipewire-0.3, based on a patch at:
-https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1062
---- meson.build
-+++ meson.build
-@@ -50,7 +50,7 @@ libinput_req = '>= 1.7'
- gbm_req = '>= 10.3'
-
- # screen cast version requirements
--libpipewire_req = '>= 0.2.5'
-+libpipewire_req = '>= 0.3.0'
-
- gnome = import('gnome')
- pkg = import('pkgconfig')
-@@ -241,7 +241,7 @@ endif
-
- have_remote_desktop = get_option('remote_desktop')
- if have_remote_desktop
--  libpipewire_dep = dependency('libpipewire-0.2', version: libpipewire_req)
-+  libpipewire_dep = dependency('libpipewire-0.3', version: libpipewire_req)
- endif
-
- have_introspection = get_option('introspection')
-diff --git a/src/backends/meta-screen-cast-stream-src.c b/src/backends/meta-screen-cast-stream-src.c
-index 82c5cba436..ba1ce94a7e 100644
---- src/backends/meta-screen-cast-stream-src.c
-+++ src/backends/meta-screen-cast-stream-src.c
-@@ -29,6 +29,7 @@
- #include <spa/param/props.h>
- #include <spa/param/format-utils.h>
- #include <spa/param/video/format-utils.h>
-+#include <spa/utils/result.h>
- #include <stdint.h>
- #include <sys/mman.h>
-
-@@ -62,15 +63,6 @@ enum
-
- static guint signals[N_SIGNALS];
-
--typedef struct _MetaSpaType
--{
--  struct spa_type_media_type media_type;
--  struct spa_type_media_subtype media_subtype;
--  struct spa_type_format_video format_video;
--  struct spa_type_video_format video_format;
--  uint32_t meta_cursor;
--} MetaSpaType;
--
- typedef struct _MetaPipeWireSource
- {
-   GSource base;
-@@ -82,19 +74,19 @@ typedef struct _MetaScreenCastStreamSrcPrivate
- {
-   MetaScreenCastStream *stream;
-
-+  struct pw_context *pipewire_context;
-   struct pw_core *pipewire_core;
--  struct pw_remote *pipewire_remote;
--  struct pw_type *pipewire_type;
-   MetaPipeWireSource *pipewire_source;
--  struct spa_hook pipewire_remote_listener;
-+  struct spa_hook pipewire_core_listener;
-
-   gboolean is_enabled;
-
-   struct pw_stream *pipewire_stream;
-   struct spa_hook pipewire_stream_listener;
-+  uint32_t node_id;
-
--  MetaSpaType spa_type;
-   struct spa_video_info_raw video_format;
-+  int video_stride;
-
-   uint64_t last_frame_timestamp_us;
-
-@@ -112,8 +104,6 @@ G_DEFINE_TYPE_WITH_CODE (MetaScreenCastStreamSrc,
-                                                 meta_screen_cast_stream_src_init_initable_iface)
-                          G_ADD_PRIVATE (MetaScreenCastStreamSrc))
-
--#define PROP_RANGE(min, max) 2, (min), (max)
--
- static void
- meta_screen_cast_stream_src_get_specs (MetaScreenCastStreamSrc *src,
-                                        int                     *width,
-@@ -286,9 +276,6 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-                                                               int                      x,
-                                                               int                      y)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-
-   spa_meta_cursor->id = 1;
-@@ -300,7 +287,7 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   spa_meta_cursor->hotspot.x = 0;
-@@ -317,9 +304,6 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-                                                         int                      y,
-                                                         float                    scale)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   CoglTexture *cursor_texture;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-   int hotspot_x, hotspot_y;
-@@ -346,7 +330,7 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   meta_cursor_sprite_get_hotspot (cursor_sprite, &hotspot_x, &hotspot_y);
-@@ -382,12 +366,10 @@ static void
- add_cursor_metadata (MetaScreenCastStreamSrc *src,
-                      struct spa_buffer       *spa_buffer)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_cursor *spa_meta_cursor;
-
--  spa_meta_cursor = spa_buffer_find_meta (spa_buffer, spa_type->meta_cursor);
-+  spa_meta_cursor = spa_buffer_find_meta_data (spa_buffer, SPA_META_Cursor,
-+                                               sizeof (*spa_meta_cursor));
-   if (spa_meta_cursor)
-     meta_screen_cast_stream_src_set_cursor_metadata (src, spa_meta_cursor);
- }
-@@ -447,14 +429,14 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-     {
-       data = spa_buffer->datas[0].data;
-     }
--  else if (spa_buffer->datas[0].type == priv->pipewire_type->data.MemFd)
-+  else if (spa_buffer->datas[0].type == SPA_DATA_MemFd)
-     {
-       map = mmap (NULL, spa_buffer->datas[0].maxsize + spa_buffer->datas[0].mapoffset,
-                   PROT_READ | PROT_WRITE, MAP_SHARED,
-                   spa_buffer->datas[0].fd, 0);
-       if (map == MAP_FAILED)
-         {
--          g_warning ("Failed to mmap pipewire stream buffer: %s\n",
-+          g_warning ("Failed to mmap pipewire stream buffer: %s",
-                      strerror (errno));
-           return;
-         }
-@@ -469,28 +451,30 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-
-   if (meta_screen_cast_stream_src_record_frame (src, data))
-     {
--      struct spa_meta_video_crop *spa_meta_video_crop;
-+      struct spa_meta_region *spa_meta_video_crop;
-
-       spa_buffer->datas[0].chunk->size = spa_buffer->datas[0].maxsize;
-+      spa_buffer->datas[0].chunk->stride = priv->video_stride;
-
-       /* Update VideoCrop if needed */
-       spa_meta_video_crop =
--        spa_buffer_find_meta (spa_buffer, priv->pipewire_type->meta.VideoCrop);
-+        spa_buffer_find_meta_data (spa_buffer, SPA_META_VideoCrop,
-+                                   sizeof (*spa_meta_video_crop));
-       if (spa_meta_video_crop)
-         {
-           if (meta_screen_cast_stream_src_get_videocrop (src, &crop_rect))
-             {
--              spa_meta_video_crop->x = crop_rect.x;
--              spa_meta_video_crop->y = crop_rect.y;
--              spa_meta_video_crop->width = crop_rect.width;
--              spa_meta_video_crop->height = crop_rect.height;
-+              spa_meta_video_crop->region.position.x = crop_rect.x;
-+              spa_meta_video_crop->region.position.y = crop_rect.y;
-+              spa_meta_video_crop->region.size.width = crop_rect.width;
-+              spa_meta_video_crop->region.size.height = crop_rect.height;
-             }
-           else
-             {
--              spa_meta_video_crop->x = 0;
--              spa_meta_video_crop->y = 0;
--              spa_meta_video_crop->width = priv->stream_width;
--              spa_meta_video_crop->height = priv->stream_height;
-+              spa_meta_video_crop->region.position.x = 0;
-+              spa_meta_video_crop->region.position.y = 0;
-+              spa_meta_video_crop->region.size.width = priv->stream_width;
-+              spa_meta_video_crop->region.size.height = priv->stream_height;
-             }
-         }
-     }
-@@ -555,7 +539,6 @@ on_stream_state_changed (void                 *data,
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  uint32_t node_id;
-
-   switch (state)
-     {
-@@ -563,14 +546,12 @@ on_stream_state_changed (void                 *data,
-       g_warning ("pipewire stream error: %s", error_message);
-       meta_screen_cast_stream_src_notify_closed (src);
-       break;
--    case PW_STREAM_STATE_CONFIGURE:
--      node_id = pw_stream_get_node_id (priv->pipewire_stream);
--      g_signal_emit (src, signals[READY], 0, (unsigned int) node_id);
--      break;
--    case PW_STREAM_STATE_UNCONNECTED:
--    case PW_STREAM_STATE_CONNECTING:
--    case PW_STREAM_STATE_READY:
-     case PW_STREAM_STATE_PAUSED:
-+      if (priv->node_id == SPA_ID_INVALID && priv->pipewire_stream)
-+        {
-+          priv->node_id = pw_stream_get_node_id (priv->pipewire_stream);
-+          g_signal_emit (src, signals[READY], 0, (unsigned int) priv->node_id);
-+        }
-       if (meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_disable (src);
-       break;
-@@ -578,68 +559,69 @@ on_stream_state_changed (void                 *data,
-       if (!meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_enable (src);
-       break;
-+    case PW_STREAM_STATE_UNCONNECTED:
-+    case PW_STREAM_STATE_CONNECTING:
-+      break;
-     }
- }
-
- static void
--on_stream_format_changed (void                 *data,
--                          const struct spa_pod *format)
-+on_stream_param_changed (void                 *data,
-+                         uint32_t              id,
-+                         const struct spa_pod *format)
- {
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   uint8_t params_buffer[1024];
-   int32_t width, height, stride, size;
-   struct spa_pod_builder pod_builder;
-   const struct spa_pod *params[3];
-   const int bpp = 4;
-
--  if (!format)
--    {
--      pw_stream_finish_format (priv->pipewire_stream, 0, NULL, 0);
--      return;
--    }
-+  if (!format || id != SPA_PARAM_Format)
-+    return;
-
-   spa_format_video_raw_parse (format,
--                              &priv->video_format,
--                              &priv->spa_type.format_video);
-+                              &priv->video_format);
-
-   width = priv->video_format.size.width;
-   height = priv->video_format.size.height;
-   stride = SPA_ROUND_UP_N (width * bpp, 4);
-   size = height * stride;
-
-+  priv->video_stride = stride;
-+
-   pod_builder = SPA_POD_BUILDER_INIT (params_buffer, sizeof (params_buffer));
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idBuffers, pipewire_type->param_buffers.Buffers,
--    ":", pipewire_type->param_buffers.size, "i", size,
--    ":", pipewire_type->param_buffers.stride, "i", stride,
--    ":", pipewire_type->param_buffers.buffers, "iru", 16, PROP_RANGE (2, 16),
--    ":", pipewire_type->param_buffers.align, "i", 16);
--
--  params[1] = spa_pod_builder_object (
-+    SPA_TYPE_OBJECT_ParamBuffers, SPA_PARAM_Buffers,
-+    SPA_PARAM_BUFFERS_buffers, SPA_POD_CHOICE_RANGE_Int (16, 2, 16),
-+    SPA_PARAM_BUFFERS_blocks, SPA_POD_Int (1),
-+    SPA_PARAM_BUFFERS_size, SPA_POD_Int (size),
-+    SPA_PARAM_BUFFERS_stride, SPA_POD_Int (stride),
-+    SPA_PARAM_BUFFERS_align, SPA_POD_Int (16));
-+
-+  params[1] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", pipewire_type->meta.VideoCrop,
--    ":", pipewire_type->param_meta.size, "i", sizeof (struct spa_meta_video_crop));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_VideoCrop),
-+    SPA_PARAM_META_size, SPA_POD_Int (sizeof (struct spa_meta_region)));
-
--  params[2] = spa_pod_builder_object (
-+  params[2] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", priv->spa_type.meta_cursor,
--    ":", pipewire_type->param_meta.size, "i", CURSOR_META_SIZE (64, 64));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_Cursor),
-+    SPA_PARAM_META_size, SPA_POD_Int (CURSOR_META_SIZE (64, 64)));
-
--  pw_stream_finish_format (priv->pipewire_stream, 0,
--                           params, G_N_ELEMENTS (params));
-+  pw_stream_update_params (priv->pipewire_stream, params, G_N_ELEMENTS (params));
- }
-
- static const struct pw_stream_events stream_events = {
-   PW_VERSION_STREAM_EVENTS,
-   .state_changed = on_stream_state_changed,
--  .format_changed = on_stream_format_changed,
-+  .param_changed = on_stream_param_changed,
- };
-
- static struct pw_stream *
-@@ -652,8 +634,6 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   uint8_t buffer[1024];
-   struct spa_pod_builder pod_builder =
-     SPA_POD_BUILDER_INIT (buffer, sizeof (buffer));
--  MetaSpaType *spa_type = &priv->spa_type;
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   float frame_rate;
-   MetaFraction frame_rate_fraction;
-   struct spa_fraction max_framerate;
-@@ -661,7 +641,9 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   const struct spa_pod *params[1];
-   int result;
-
--  pipewire_stream = pw_stream_new (priv->pipewire_remote,
-+  priv->node_id = SPA_ID_INVALID;
-+
-+  pipewire_stream = pw_stream_new (priv->pipewire_core,
-                                    "meta-screen-cast-src",
-                                    NULL);
-   if (!pipewire_stream)
-@@ -682,17 +664,17 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   max_framerate = SPA_FRACTION (frame_rate_fraction.num,
-                                 frame_rate_fraction.denom);
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idEnumFormat, pipewire_type->spa_format,
--    "I", spa_type->media_type.video,
--    "I", spa_type->media_subtype.raw,
--    ":", spa_type->format_video.format, "I", spa_type->video_format.BGRx,
--    ":", spa_type->format_video.size, "R", &SPA_RECTANGLE (priv->stream_width,
--                                                           priv->stream_height),
--    ":", spa_type->format_video.framerate, "F", &SPA_FRACTION (0, 1),
--    ":", spa_type->format_video.max_framerate, "Fru", &max_framerate,
--                                                      PROP_RANGE (&min_framerate,
-+    SPA_TYPE_OBJECT_Format, SPA_PARAM_EnumFormat,
-+    SPA_FORMAT_mediaType, SPA_POD_Id (SPA_MEDIA_TYPE_video),
-+    SPA_FORMAT_mediaSubtype, SPA_POD_Id (SPA_MEDIA_SUBTYPE_raw),
-+    SPA_FORMAT_VIDEO_format, SPA_POD_Id (SPA_VIDEO_FORMAT_BGRx),
-+    SPA_FORMAT_VIDEO_size, SPA_POD_Rectangle (&SPA_RECTANGLE (priv->stream_width,
-+                                                              priv->stream_height)),
-+    SPA_FORMAT_VIDEO_framerate, SPA_POD_Fraction (&SPA_FRACTION (0, 1)),
-+    SPA_FORMAT_VIDEO_maxFramerate, SPA_POD_CHOICE_RANGE_Fraction (&max_framerate,
-+                                                                  &min_framerate,
-                                                                   &max_framerate));
-
-   pw_stream_add_listener (pipewire_stream,
-@@ -702,7 +684,7 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-
-   result = pw_stream_connect (pipewire_stream,
-                               PW_DIRECTION_OUTPUT,
--                              NULL,
-+                              SPA_ID_INVALID,
-                               (PW_STREAM_FLAG_DRIVER |
-                                PW_STREAM_FLAG_MAP_BUFFERS),
-                               params, G_N_ELEMENTS (params));
-@@ -717,40 +699,18 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
- }
-
- static void
--on_state_changed (void                 *data,
--                  enum pw_remote_state  old,
--                  enum pw_remote_state  state,
--                  const char           *error_message)
-+on_core_error (void       *data,
-+               uint32_t    id,
-+	       int         seq,
-+	       int         res,
-+	       const char *message)
- {
-   MetaScreenCastStreamSrc *src = data;
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_stream *pipewire_stream;
--  GError *error = NULL;
-
--  switch (state)
--    {
--    case PW_REMOTE_STATE_ERROR:
--      g_warning ("pipewire remote error: %s\n", error_message);
--      meta_screen_cast_stream_src_notify_closed (src);
--      break;
--    case PW_REMOTE_STATE_CONNECTED:
--      pipewire_stream = create_pipewire_stream (src, &error);
--      if (!pipewire_stream)
--        {
--          g_warning ("Could not create pipewire stream: %s", error->message);
--          g_error_free (error);
--          meta_screen_cast_stream_src_notify_closed (src);
--        }
--      else
--        {
--          priv->pipewire_stream = pipewire_stream;
--        }
--      break;
--    case PW_REMOTE_STATE_UNCONNECTED:
--    case PW_REMOTE_STATE_CONNECTING:
--      break;
--    }
-+  g_warning ("pipewire remote error: id:%u %s", id, message);
-+
-+  if (id == PW_ID_CORE && res == -EPIPE)
-+    meta_screen_cast_stream_src_notify_closed (src);
- }
-
- static gboolean
-@@ -793,17 +753,6 @@ static GSourceFuncs pipewire_source_funcs =
-   pipewire_loop_source_finalize
- };
-
--static void
--init_spa_type (MetaSpaType         *type,
--               struct spa_type_map *map)
--{
--  spa_type_media_type_map (map, &type->media_type);
--  spa_type_media_subtype_map (map, &type->media_subtype);
--  spa_type_format_video_map (map, &type->format_video);
--  spa_type_video_format_map (map, &type->video_format);
--  type->meta_cursor = spa_type_map_get_id(map, SPA_TYPE_META__Cursor);
--}
--
- static MetaPipeWireSource *
- create_pipewire_source (void)
- {
-@@ -829,9 +778,9 @@ create_pipewire_source (void)
-   return pipewire_source;
- }
-
--static const struct pw_remote_events remote_events = {
--  PW_VERSION_REMOTE_EVENTS,
--  .state_changed = on_state_changed,
-+static const struct pw_core_events core_events = {
-+  PW_VERSION_CORE_EVENTS,
-+  .error = on_core_error,
- };
-
- static gboolean
-@@ -851,37 +800,31 @@ meta_screen_cast_stream_src_initable_init (GInitable     *initable,
-       return FALSE;
-     }
-
--  priv->pipewire_core = pw_core_new (priv->pipewire_source->pipewire_loop,
--                                     NULL);
--  if (!priv->pipewire_core)
-+  priv->pipewire_context = pw_context_new (priv->pipewire_source->pipewire_loop,
-+                                           NULL, 0);
-+  if (!priv->pipewire_context)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Failed to create pipewire core");
-+                   "Failed to create pipewire context");
-       return FALSE;
-     }
-
--  priv->pipewire_remote = pw_remote_new (priv->pipewire_core, NULL, 0);
--  if (!priv->pipewire_remote)
-+  priv->pipewire_core = pw_context_connect (priv->pipewire_context, NULL, 0);
-+  if (!priv->pipewire_core)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't creat pipewire remote");
-+                   "Couldn't connect pipewire context");
-       return FALSE;
-     }
-
--  pw_remote_add_listener (priv->pipewire_remote,
--                          &priv->pipewire_remote_listener,
--                          &remote_events,
--                          src);
-+  pw_core_add_listener (priv->pipewire_core,
-+                        &priv->pipewire_core_listener,
-+                        &core_events,
-+                        src);
-
--  priv->pipewire_type = pw_core_get_type (priv->pipewire_core);
--  init_spa_type (&priv->spa_type, priv->pipewire_type->map);
--
--  if (pw_remote_connect (priv->pipewire_remote) != 0)
--    {
--      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't connect pipewire remote");
--      return FALSE;
--    }
-+  priv->pipewire_stream = create_pipewire_stream (src, error);
-+  if (!priv->pipewire_stream)
-+    return FALSE;
-
-   return TRUE;
- }
-@@ -912,8 +855,8 @@ meta_screen_cast_stream_src_finalize (GObject *object)
-     meta_screen_cast_stream_src_disable (src);
-
-   g_clear_pointer (&priv->pipewire_stream, pw_stream_destroy);
--  g_clear_pointer (&priv->pipewire_remote, pw_remote_destroy);
--  g_clear_pointer (&priv->pipewire_core, pw_core_destroy);
-+  g_clear_pointer (&priv->pipewire_core, pw_core_disconnect);
-+  g_clear_pointer (&priv->pipewire_context, pw_context_destroy);
-   g_source_destroy (&priv->pipewire_source->base);
-
-   G_OBJECT_CLASS (meta_screen_cast_stream_src_parent_class)->finalize (object);
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 806a3bef9f0..132cd9dd645 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,35 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=3
+version=3.36.3
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+ -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland
+ -Dxwayland_initfd=disabled"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From caee06cc1405fee66d752de147e6c90a241b672d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:38 +0600
Subject: [PATCH 38/61] gnome-shell: update to 3.36.3.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..ee4c6288f5f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb

From f5f7f9f47b7ff3e892b02ae5659ad64fc213030b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:46 +0600
Subject: [PATCH 39/61] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From 656abb6fb01b1db1eb35a7abfda7c3152400f1d7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:53 +0600
Subject: [PATCH 40/61] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..16bc43fd0e7 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -13,15 +13,15 @@ configure_args="$(vopt_enable gir introspection)
 hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
-depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+depends="gnome-settings-daemon gnome-shell gnome-session gnome-themes-extra
+ gsettings-desktop-schemas xorg-server xorg-server-xwayland xrdb"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 90f7a5231e4916a172fc4b71fe16c508d300d66f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:00 +0600
Subject: [PATCH 41/61] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From c55f289986c8b5c87142c69233ca829c462e4c00 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:07 +0600
Subject: [PATCH 42/61] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 2380493e6f8b49ae3e87c41a535bf5da371b99df Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:14 +0600
Subject: [PATCH 43/61] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 2204d9dba638cef1a578cd331bd5d30258619e64 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:21 +0600
Subject: [PATCH 44/61] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From d29084b1c8ef101cb479b809b3b60a603da10cfa Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:28 +0600
Subject: [PATCH 45/61] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 4cc7cd0c732b2d8c621e6ccc9d23d34544ce9468 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:36 +0600
Subject: [PATCH 46/61] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From f795d7b81f3491093b0911e0f3c327fbea8ff7a2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:46 +0600
Subject: [PATCH 47/61] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 29ae4fe19c6b21a398bad476900cbd9aea24263d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:54 +0600
Subject: [PATCH 48/61] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From 0e7cb7bf29fdf8bc94706fadb566b6f9743c0411 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:01 +0600
Subject: [PATCH 49/61] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 90f6cff1b3a317bc26dc6226c28c22d72ed7740e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:09 +0600
Subject: [PATCH 50/61] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From f6c7dc3d5c832ebc346c9b9ca0a29da99843c595 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 7 Jul 2020 03:19:35 +0600
Subject: [PATCH 51/61] evince: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/evince/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evince/template b/srcpkgs/evince/template
index 4035f15c690..e2336631cd4 100644
--- a/srcpkgs/evince/template
+++ b/srcpkgs/evince/template
@@ -1,7 +1,7 @@
 # Template file for 'evince'
 pkgname=evince
 version=3.36.7
-revision=1
+revision=2
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection) --disable-schemas-compile

From ead2da5fcfe2b889bd34ee1d46c4c84d2ce73fcb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 16 Jun 2020 22:56:53 +0700
Subject: [PATCH 52/61] gnome-desktop: add do_check

---
 srcpkgs/gnome-desktop/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index c1a7408c207..ccd7c56569a 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -11,6 +11,7 @@ makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
  libxkbfile-devel libXrandr-devel gdk-pixbuf-devel"
 depends="bubblewrap gsettings-desktop-schemas iso-codes xkeyboard-config"
+checkdepends="$depends xorg-server-xvfb"
 short_desc="GNOME desktop management utilities"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
@@ -21,6 +22,22 @@ checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 build_options="gir"
 build_options_default="gir"
 
+do_check() {
+	# there is still 1 test fail for he_IL locale in musl
+	if test "$XBPS_TARGET_LIBC" != musl; then
+		local _pid
+		Xvfb :1 -screen 0 1366x768x24 &
+		_pid=$!
+		trap "kill $_pid" EXIT
+		trap 'exit 1' INT HUP TERM
+		export DISPLAY=:1
+		ninja -C build test
+		trap - EXIT INT HUP TERM
+		kill $_pid
+	fi
+}
+
+
 gnome-desktop-devel_package() {
 	depends="gtk+3-devel gsettings-desktop-schemas-devel>=3.12
 	 gdk-pixbuf-devel iso-codes libX11-devel libglib-devel libseccomp-devel

From 1bf458fdea3e2b791503b1da95d3034c22fdbcc4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 06:25:55 +0700
Subject: [PATCH 53/61] gnome-settings-daemon: fix checkdepends

---
 srcpkgs/gnome-settings-daemon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index 9ceb1d13de9..f4539a72d43 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -12,7 +12,7 @@ makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-dev
  xf86-input-wacom-devel"
 depends="hicolor-icon-theme pulseaudio"
 checkdepends="elogind libnotify python3-dbusmock python3-gobject
- python3-pycodestyle"
+ python3-pycodestyle which hwids eudev"
 short_desc="GNOME settings daemon"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"

From ce05fda88835b2572f1b3c2b375810edf3bb7bd3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 07:44:12 +0700
Subject: [PATCH 54/61] mutter: skip do_check

---
 srcpkgs/mutter/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 132cd9dd645..117b59a29a9 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -22,6 +22,10 @@ checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
 shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
  libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
+do_check() {
+	msg_warn "xvfb does not work\n"
+}
+
 mutter-devel_package() {
 	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
 	 libX11-devel libXtst-devel mutter-${version}_${revision}"

From 8477eab93633d382f8ad7471c331ab9ce9f63c0d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 21 Jun 2020 22:53:03 +0700
Subject: [PATCH 55/61] evolution-data-server: split vala build option from gir

---
 srcpkgs/evolution-data-server/template | 54 ++++++++++++--------------
 1 file changed, 25 insertions(+), 29 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index ebf8145f88c..822d59e6922 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -2,45 +2,38 @@
 pkgname=evolution-data-server
 version=3.36.3
 revision=1
+_basever=${version%.*}
 build_style=cmake
-build_helper=gir
+build_helper="gir qemu"
 configure_args="-DENABLE_UOA=OFF
- $(vopt_if gir '-DENABLE_INTROSPECTION=ON -DENABLE_VALA_BINDINGS=ON' '-DENABLE_WEATHER=OFF')"
+ $(vopt_if gir -DENABLE_INTROSPECTION=ON)
+ $(vopt_if vala -DENABLE_VALA_BINDINGS=ON)"
 hostmakedepends="flex glib-devel gperf intltool pkg-config libglib-devel
- $(vopt_if gir 'gobject-introspection')"
-makedepends="boost-devel libcanberra-devel libgdata-devel $(vopt_if gir libgweather-devel)
- libical-devel libsecret-devel mit-krb5-devel $(vopt_if gir 'vala-devel') webkit2gtk-devel"
-depends="$(vopt_if gir libgweather) libsoup-gnome"
+ $(vopt_if vala vala)"
+makedepends="boost-devel libcanberra-devel libgdata-devel libical-devel
+ libsecret-devel mit-krb5-devel webkit2gtk-devel libgweather-devel
+ $(vopt_if vala vala-devel)"
+depends="libgweather libsoup-gnome dbus tzdata"
+checkdepends="$depends"
 short_desc="Centralized access to appointments and contacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
-changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
-distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+changelog="https://raw.githubusercontent.com/GNOME/$pkgname/gnome-${_basever/./-}/NEWS"
+distfiles="${GNOME_SITE}/${pkgname}/${_basever}/${pkgname}-${version}.tar.xz"
 checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
-build_options="gir"
-if [ -z "$CROSS_BUILD" ]; then
-	build_options_default="gir"
-fi
+build_options="gir vala"
+build_options_default="gir vala"
 
-# cmake perfomrms 2 checks using binary runtime, about iconv and sfrtime.
-# musl (1.1.16) does not support "ISO-2022-JP" encoding (see its roadmap),
-# although evolution-data-server is fine with musl.
-# If crossbuild, cmake let disabling runtime checks via specific directives.
-# test iconv-detect.c also generates iconv-detect.h that is required for build.
-# So completly disable test from iconv-detect.c (cmake.patch file) and
-# use a cmake cache file on crossbuild to disable sfrtime running test.
-if [ "$CROSS_BUILD" ]; then
-	configure_args+=" -C disableRuntimeTests.cmake"
-fi
-
-pre_configure() {
-	mkdir -p build
-	cp ${FILESDIR}/iconv-detect.h ${wrksrc}/build/.
-	if [ "$CROSS_BUILD" ]; then
-		cp ${FILESDIR}/disableRuntimeTests.cmake ${wrksrc}/build/.
-	fi
+do_check() {
+	cd build
+	# TODO This test is problematic, first run usually fail
+	# Signify something wrong with evolution-data-server on first run
+	ctest -R test-book-client-custom-summary || true
+	# make test run ctest --force-new-ctest-process which is problematic
+	# noone should run multiple instance of evolution-data-server irl.
+	ctest
 }
 
 post_install() {
@@ -49,6 +42,7 @@ post_install() {
 
 evolution-data-server-devel_package() {
 	depends="sqlite-devel mit-krb5-devel nss-devel nspr-devel libical-devel
+
 		libldap-devel libgdata-devel>=0.15 libsecret-devel libglib-devel
 		libsoup-devel gtk+3-devel libxml2-devel gnome-desktop-devel
 		${sourcepkg}>=${version}_${revision}"
@@ -59,6 +53,8 @@ evolution-data-server-devel_package() {
 		vmove "usr/lib/*.so"
 		if [ "$build_option_gir" ]; then
 			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
 			vmove usr/share/vala
 		fi
 	}

From 871b03c79fb4ec66ebb7c700b04623c2fbd8c1c5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:51:31 +0700
Subject: [PATCH 56/61] folks: add build option gir and vala

Disable gir and vala in evolution-data-server will make folks failed to
be built.

Either enable both of them, or disable both of them.
---
 srcpkgs/folks/template | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index e21ca9c1077..6dabeadafaf 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -5,10 +5,11 @@ revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Db_lto=false"
-hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
- gobject-introspection evolution-data-server-devel"
+hostmakedepends="pkg-config intltool glib-devel python3 python3-dbusmock
+ evolution-data-server-devel $(vopt_if vala vala)"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
- libgee08-devel evolution-data-server-devel tracker-devel"
+ libgee08-devel evolution-data-server-devel tracker-devel
+ $(vopt_if vala vala-devel)"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
@@ -17,6 +18,9 @@ homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
+build_options="gir vala"
+build_options_default="gir vala"
+
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
@@ -24,7 +28,11 @@ folks-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove "usr/lib/*.so"
-		vmove usr/share/vala
-		vmove usr/share/gir-1.0
+		if [ "$build_option_gir" ]; then
+			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
+			vmove usr/share/vala
+		fi
 	}
 }

From 3be4bd11811e6c5aa873c1d65168237291b4fc49 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:52:50 +0700
Subject: [PATCH 57/61] nautilus: correct checkdepends

---
 srcpkgs/nautilus/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 94cb10492ca..c6faf7bf3d7 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -11,7 +11,7 @@ makedepends="exempi-devel gnome-autoar-devel gnome-desktop-devel gtk+3-devel
  libX11-devel libxml2-devel tracker-devel gst-plugins-base1-devel"
 depends="desktop-file-utils gsettings-desktop-schemas hicolor-icon-theme
  tracker-miners tracker"
-checkdepends="tracker"
+checkdepends="tracker tracker-miners"
 short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"

From 63b790607b48fa9735d736b125536dcabc0aa6bc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:53:14 +0700
Subject: [PATCH 58/61] tracker: add tar to checkdepends

---
 srcpkgs/tracker/template | 1 +
 1 file changed, 1 insertion(+)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index e814f77c711..19338db45e1 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -11,6 +11,7 @@ hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
+checkdepends="tar"
 short_desc="Personal search tool and storage system"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"

From e15b49c9284d60d2007851a7b5e199a4482cd5fd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:53:55 +0700
Subject: [PATCH 59/61] tracker-miners: simplify template

---
 srcpkgs/tracker-miners/template | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/tracker-miners/template b/srcpkgs/tracker-miners/template
index 020c124f322..a5ad65d7441 100644
--- a/srcpkgs/tracker-miners/template
+++ b/srcpkgs/tracker-miners/template
@@ -3,6 +3,7 @@ pkgname=tracker-miners
 version=2.3.1
 revision=3
 build_style=meson
+# Missing libgrss
 configure_args="-Dtracker_core=system -Ddocs=false -Dextract=true
  -Dfunctional_tests=false -Dcue=enabled -Dexif=enabled -Dflac=enabled
  -Dgif=enabled -Dgsf=enabled -Diptc=enabled -Diso=enabled -Djpeg=enabled
@@ -17,14 +18,10 @@ makedepends="tracker-devel ffmpeg-devel dbus-devel exempi-devel libflac-devel
  libexif-devel libgsf-devel libgxps-devel libiptcdata-devel libjpeg-turbo-devel
  libosinfo-devel libpng-devel libseccomp-devel tiff-devel libxml2-devel
  libvorbis-devel poppler-glib-devel taglib-devel totem-pl-parser-devel
- upower-devel zlib-devel gst-plugins-base1-devel giflib-devel"
+ upower-devel zlib-devel gst-plugins-base1-devel giflib-devel libharfbuzz"
 short_desc="Data miners for tracker"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://developer.gnome.org/libtracker-miner/stable"
 distfiles="${GNOME_SITE}/tracker-miners/${version%.*}/tracker-miners-${version}.tar.xz"
 checksum=7b1de06a7a79ea1c7813c8a21f8cd1c55f2b95f799cf9f47f0204f3be8a590e0
-
-# Missing libgrss
-configure_args+=" -Dminer_rss=false"
-makedepends+=" libharfbuzz"

From bf198276ac65fd1a00528810b5a9eb287a5d20c6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 24 Jun 2020 23:18:40 +0700
Subject: [PATCH 60/61] gnome-shell: add do_check

---
 srcpkgs/gnome-shell/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index ee4c6288f5f..deb922a09ad 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -15,6 +15,7 @@ makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  network-manager-applet-devel polkit-devel pulseaudio-devel
  startup-notification-devel telepathy-logger-devel gnome-autoar-devel"
 depends="caribou elogind glxinfo gnome-control-center gsettings-desktop-schemas upower"
+checkdepends="$depends accountsservice gdm xorg-server-xvfb pipewire mesa-dri dbus-x11"
 short_desc="GNOME core user interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
@@ -22,3 +23,19 @@ homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb
+
+do_check() {
+	local _pid
+	export DISPLAY=:1
+	export XDG_RUNTIME_DIR=/tmp
+	Xvfb :1 -screen 0 1366x768x24 &
+	_pid=$!
+	trap "kill $_pid" EXIT
+	trap 'exit 1' INT HUP TERM
+	eval $(dbus-launch)
+	export DBUS_SESSION_BUS_ADDRESS
+	ninja test -C build
+	# trap is hanging on normal exit, dbus?
+	trap - EXIT INT HUP TERM
+	kill $_pid || true
+}

From dfc9dafaf1a8bf844131e5865325ecb341a0117c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Thu, 2 Jul 2020 09:17:31 +0700
Subject: [PATCH 61/61] fixup! evolution-data-server: split vala build option
 from gir

[ci skip]
---
 srcpkgs/evolution-data-server/template | 42 +++++++++++++++++++++++++-
 1 file changed, 41 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 822d59e6922..705ce093115 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -26,6 +26,47 @@ checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 build_options="gir vala"
 build_options_default="gir vala"
 
+pre_build() {
+	[ -z "$CROSS_BUILD" ] && return 0
+	local _dir=
+	for _dir in libebackend libedataserver libedataserverui \
+		addressbook/libebook-contacts \
+		addressbook/libedata-book \
+		addressbook/libebook \
+		calendar/libecal \
+		calendar/libedata-cal
+	do
+		ln -rsf $wrksrc/build/src/private/libedbus-private.so build/src/$_dir
+	done
+
+	for _dir in addressbook/libebook-contacts \
+		calendar/libecal calendar/libedata-cal
+	do
+		ln -sf ../../camel/libcamel-1.2.so.62 build/src/$_dir
+	done
+
+	for _dir in addressbook/libedata-book addressbook/libebook \
+		calendar/libedata-cal
+	do
+		ln -sf ../../libebackend/libebackend-1.2.so.10 build/src/$_dir
+	done
+
+	ln -sf ../../libedataserver/libedataserver-1.2.so.24 build/src/calendar/libecal
+	return
+	# ideally qemu should pick below LD_LIBARY_PATH
+	# instead of above shenanigans
+	# But it doesn't work for now, left it here as future reference.
+	# TODO figure a better methods
+	_builddir=$wrksrc/build
+	_ld_library_path=$_builddir:$_builddir/src
+	for _dir in libedataserver private camel
+	do
+		_ld_library_path+=":$_builddir/src/$_dir"
+	done
+	_ld_library_path+=":$XBPS_CROSS_BASE/usr/lib"
+	export QEMU_SET_ENV=LD_LIBARY_PATH=$_ld_library_path
+}
+
 do_check() {
 	cd build
 	# TODO This test is problematic, first run usually fail
@@ -42,7 +83,6 @@ post_install() {
 
 evolution-data-server-devel_package() {
 	depends="sqlite-devel mit-krb5-devel nss-devel nspr-devel libical-devel
-
 		libldap-devel libgdata-devel>=0.15 libsecret-devel libglib-devel
 		libsoup-devel gtk+3-devel libxml2-devel gnome-desktop-devel
 		${sourcepkg}>=${version}_${revision}"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (77 preceding siblings ...)
  2020-07-07 15:20 ` mnabid
@ 2020-07-12  8:53 ` sgn
  2020-07-12  9:46 ` sgn
                   ` (8 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: sgn @ 2020-07-12  8:53 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1833 bytes --]

There is an updated pull request by sgn against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

gnome 3.36 updates
<details>
<summary><i>List of updates : </i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.3
 * evolution -> 3.36.3
 * evolution-data-server -> 3.36.3
 * evolution-ews -> 3.36.3
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.3
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.3
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.3
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.3
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.3
 * nautilus -> 3.36.3
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * python3-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built natively in `x86_64` and crossbuilt for `armv7l`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 765854 bytes --]

From 5b06b6bcabd13139a9312189a9e4eb3619dca13f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:42:53 +0600
Subject: [PATCH 01/65] gnome-desktop: update to 3.36.2.

Closes: #21382
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 00a0af53fcb..a34afe4079c 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1182,7 +1182,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 5ab0584e48f995c803280de3281db11ef9257a0c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:18 +0600
Subject: [PATCH 02/65] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 3eeb42680a941b5193aa94c1a582c6be618d36a1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:25 +0600
Subject: [PATCH 03/65] nautilus: update to 3.36.3.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..94cb10492ca 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=b6cafc7ab1e70a64383de391b6097fcccbf36b208f8502d8c46423224fd30ef8
 
 build_options="gir"
 build_options_default="gir"

From 2aa54ef7059ad64fac9467dab327f49819ff61ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:32 +0600
Subject: [PATCH 04/65] gnome-music: update to 3.36.3.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..2273ac1ca16 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.3
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=54f8d240f8995f4cff4dce5e1cbdc60befc81d79bf72c1e4fd807ed05c114237
 lib32disabled=yes

From e6f28780516d17e4737864085e83dcf5e6338656 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:38 +0600
Subject: [PATCH 05/65] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 3d8f7c7c70626afc0489323d0c5621e316365f67 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:51 +0600
Subject: [PATCH 06/65] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index e4cacb7079e..cfa1cf57594 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 2125c9346112fefb7defa198d2c7390e417b15e9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:07 +0600
Subject: [PATCH 07/65] gnome-maps: update to 3.36.2.

... and unmark nocross.
---
 common/shlibs               | 1 +
 srcpkgs/gnome-maps/template | 8 ++++----
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index a34afe4079c..048cce8c9bb 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -622,6 +622,7 @@ libcanberra-gtk3.so.0 libcanberra-gtk3-0.30_6
 libgtop-2.0.so.11 libgtop-2.38.0_1
 librarian.so.0 rarian-0.8.1_1
 libmusikcore.so musikcube-0.60.1_1
+libgnome-maps.so.0 gnome-maps-3.36.2_1
 libgnome-menu-3.so.0 gnome-menus-2.91.6_1
 libart_lgpl_2.so.2 libart-2.3.20_1
 libgnomecanvas-2.so.0 libgnomecanvas-2.30.1_1
diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..a67d84f4396 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,9 +1,10 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
+build_helper="gir"
+hostmakedepends="glib-devel gjs-devel intltool pkg-config AppStream"
 makedepends="folks-devel geoclue2-devel geocode-glib-devel gjs-devel
  gnome-desktop-devel libchamplain-devel rest-devel"
 depends="geoclue2 gfbgraph gjs"
@@ -12,5 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
-nocross="evolution-dataserver cross gir doesn't work"
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784

From 27a655dbf2972717051574de1d7c4b1aa516f47e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:14 +0600
Subject: [PATCH 08/65] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 85b558d1fbe66ae29d5362e34183161ba9fe042d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:21 +0600
Subject: [PATCH 09/65] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From bdb94f0ad12720156d46e4a9fcbea09ba1c04bc3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:29 +0600
Subject: [PATCH 10/65] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From acdd3123322e995b0a4a338639e38ae7c4c02a5c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:36 +0600
Subject: [PATCH 11/65] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From a65314ebfe78c1e3da4289460ed3ec280f22165c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:44 +0600
Subject: [PATCH 12/65] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 7aac73e711527ebea2eec425bf1d8e4c3b3e3647 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:52 +0600
Subject: [PATCH 13/65] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 97b19d883438b688488206dd37bcccc286212280 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:01 +0600
Subject: [PATCH 14/65] gnome-control-center: update to 3.36.3.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..53a555525b4 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=bc174d970dbeca3ee19c26019de31e9edf78dc9c4abde16e763566ee38c3691c
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 009a6bf7771c630d0977636761000b6d79098c75 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:08 +0600
Subject: [PATCH 15/65] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From dd5869bebb9cb097ee9c1098023a5611a191d077 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:27 +0600
Subject: [PATCH 16/65] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 317b4eb403f0c834d8c771bff1498499c766115f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:36 +0600
Subject: [PATCH 17/65] gnome-initial-setup: update to 3.36.3.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..caa33c2695e 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.3
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=d8a933f8c822cc293cc10b532779f8562342ae2271b929879e8f108491f4c285

From 924364108d8bc1b683491286978ccbd90e94c364 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:43 +0600
Subject: [PATCH 18/65] evolution-data-server: update to 3.36.3.

---
 srcpkgs/evolution-data-server/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 4ae820be068..ebf8145f88c 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,7 +1,7 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
-revision=2
+version=3.36.3
+revision=1
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 158dcfc729aa2f4efdd957cff82413bdf13655a7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:56 +0600
Subject: [PATCH 19/65] evolution: update to 3.36.3.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..d95c07eb72c 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=54e16caa286c02d4fe94b43e33abf5cd6f3a1502181bb8cf557aadc886b5ca03
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 31fad1952c51863004769f9dc7f31bdb9d43090c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:04 +0600
Subject: [PATCH 20/65] evolution-ews: update to 3.36.3.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..38fd62d39e1 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=7a97a59b10f7a48a3bcf6d476c6a2c068ec5c48c546a433812691b8301752d04

From 1a50b9426ef21b5512687e3d79f11a68496af12b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:11 +0600
Subject: [PATCH 21/65] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 94ce682408c3ba5d5ae7c9f60a6ed9ec7163d074 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:19 +0600
Subject: [PATCH 22/65] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 328af4215af6b60a60c6fca93110cda4ea8c21f2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:26 +0600
Subject: [PATCH 23/65] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 04f974f90ebf8dd526293112fdcb903320b69975 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:41 +0600
Subject: [PATCH 24/65] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index 0141d97f85d..4881056ad76 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,8 +1,8 @@
 # Template file for 'python-atspi'
 # Keep python3-atspi in sync
 pkgname=python-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From 1cffb422761ba8ac0b2b5d7a49a39af7eecbb0df Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:48 +0600
Subject: [PATCH 25/65] python3-atspi: update to 2.36.0.

---
 srcpkgs/python3-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-atspi/template b/srcpkgs/python3-atspi/template
index a33a374fe18..b2360822acf 100644
--- a/srcpkgs/python3-atspi/template
+++ b/srcpkgs/python3-atspi/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-atspi'
 pkgname=python3-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From 9402bde5011b7a5dce9823d409d82ad55071e703 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:56 +0600
Subject: [PATCH 26/65] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 048cce8c9bb..196eb3eadfc 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -839,9 +839,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From a79d76edfcd575775bffd57b67ecad67f8596b5b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:03 +0600
Subject: [PATCH 27/65] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 0eb800ec0a232740979ab48be8ecfc26439c17a1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:10 +0600
Subject: [PATCH 28/65] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..10ab8d79264 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,13 +1,13 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
+hostmakedepends="gettext docbook-xsl glib-devel libxslt pkg-config vala"
 makedepends="dconf-devel gtk+3-devel"
 short_desc="Low-level configuration system - GTK+ editor"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From c854560d2857d809b94b0165f6b5e485e229dcd2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:16 +0600
Subject: [PATCH 29/65] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 37074cb348d..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
-revision=2
+version=2.3.4
+revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 36a067d142df691e092d45409bb70459a6c3ff51 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:23 +0600
Subject: [PATCH 30/65] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 01e66f9ed1c51da02519717de6840f76f37f7596 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:39 +0600
Subject: [PATCH 31/65] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 0b0397e8150aea51ff103047ac7b217dfcbeb492 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:47 +0600
Subject: [PATCH 32/65] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 196eb3eadfc..6991365f14a 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -570,7 +570,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 45ffb11af84e0994a465e09bd67cbc4c56c73901 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:54 +0600
Subject: [PATCH 33/65] metacity: update to 3.36.1.

---
 common/shlibs                                 |  1 +
 .../patches/compositor-vulkan-fix-build.patch | 29 +++++++++++++++++++
 srcpkgs/metacity/template                     |  4 +--
 3 files changed, 32 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch

diff --git a/common/shlibs b/common/shlibs
index 6991365f14a..dc40316a92d 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -572,6 +572,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
new file mode 100644
index 00000000000..960582ded7d
--- /dev/null
+++ b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
@@ -0,0 +1,29 @@
+From 99361f28c8763ea4569b5ae9876028d53ac9a234 Mon Sep 17 00:00:00 2001
+From: Alberts Muktupāvels <alberts.muktupavels@gmail.com>
+Date: Sun, 24 May 2020 13:58:51 +0300
+Subject: [PATCH] compositor-vulkan: fix build
+
+VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE enum was removed in 1.2.140.
+
+https://gitlab.gnome.org/GNOME/metacity/-/issues/10
+---
+ src/compositor/meta-compositor-vulkan.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git src/compositor/meta-compositor-vulkan.c src/compositor/meta-compositor-vulkan.c
+index b87b5194..53b7b3ff 100644
+--- src/compositor/meta-compositor-vulkan.c
++++ src/compositor/meta-compositor-vulkan.c
+@@ -810,7 +810,9 @@ device_type_to_string (VkPhysicalDeviceType type)
+         return "cpu";
+         break;
+ 
++#if VK_HEADER_VERSION < 140
+       case VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE:
++#endif
+       case VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM:
+       default:
+         break;
+-- 
+GitLab
+
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 7fb86fd964c..7e22aeab5c7 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,6 +1,6 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
 hostmakedepends="gettext gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From e2e44026a1967664875a0dd2a416cf3ad0c5ecad Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:01 +0600
Subject: [PATCH 34/65] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 8e451546ff3c8d564dcd216c80c59fa0cdf6a7b7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:09 +0600
Subject: [PATCH 35/65] gnome-flashback: update to 3.36.3.

Added PAM config to enable screen locking.
---
 .../gnome-flashback/files/gnome-flashback.pam |  6 ++++
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 27 ++++++++++++------
 3 files changed, 52 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/files/gnome-flashback.pam
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/files/gnome-flashback.pam b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
new file mode 100644
index 00000000000..ebbb51dd0e8
--- /dev/null
+++ b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth       include	system-auth
+auth       optional     pam_gnome_keyring.so
+account    include	system-auth
+password   include	system-auth
+session    include	system-auth
diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..08566df5fd4 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,29 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="gettext-devel pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vinstall ${FILESDIR}/gnome-flashback.pam 644 /etc/pam.d gnome-flashback
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 08356c8b5c07b68cca47a05e7af214738605d719 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:24 +0600
Subject: [PATCH 36/65] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 23cee18f5fcd4d95109e915c7c08e2763f68c026 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:30 +0600
Subject: [PATCH 37/65] mutter: update to 3.36.3.

---
 common/shlibs                                 |  18 +-
 .../patches/fix-cogl-egl-includes.patch       |  11 -
 srcpkgs/mutter/patches/pipewire-0.3.patch     | 521 ------------------
 srcpkgs/mutter/template                       |  27 +-
 4 files changed, 23 insertions(+), 554 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
 delete mode 100644 srcpkgs/mutter/patches/pipewire-0.3.patch

diff --git a/common/shlibs b/common/shlibs
index dc40316a92d..acc53a02412 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3019,15 +3019,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.3_1
+libmutter-clutter-6.so mutter-3.36.3_1
+libmutter-clutter-6.so.0 mutter-3.36.3_1
+libmutter-cogl-path-6.so mutter-3.36.3_1
+libmutter-cogl-path-6.so.0 mutter-3.36.3_1
+libmutter-cogl-6.so mutter-3.36.3_1
+libmutter-cogl-6.so.0 mutter-3.36.3_1
+libmutter-cogl-pango-6.so mutter-3.36.3_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.3_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/patches/pipewire-0.3.patch b/srcpkgs/mutter/patches/pipewire-0.3.patch
deleted file mode 100644
index ebff65fba85..00000000000
--- a/srcpkgs/mutter/patches/pipewire-0.3.patch
+++ /dev/null
@@ -1,521 +0,0 @@
-Build mutter against pipewire-0.3, based on a patch at:
-https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1062
---- meson.build
-+++ meson.build
-@@ -50,7 +50,7 @@ libinput_req = '>= 1.7'
- gbm_req = '>= 10.3'
-
- # screen cast version requirements
--libpipewire_req = '>= 0.2.5'
-+libpipewire_req = '>= 0.3.0'
-
- gnome = import('gnome')
- pkg = import('pkgconfig')
-@@ -241,7 +241,7 @@ endif
-
- have_remote_desktop = get_option('remote_desktop')
- if have_remote_desktop
--  libpipewire_dep = dependency('libpipewire-0.2', version: libpipewire_req)
-+  libpipewire_dep = dependency('libpipewire-0.3', version: libpipewire_req)
- endif
-
- have_introspection = get_option('introspection')
-diff --git a/src/backends/meta-screen-cast-stream-src.c b/src/backends/meta-screen-cast-stream-src.c
-index 82c5cba436..ba1ce94a7e 100644
---- src/backends/meta-screen-cast-stream-src.c
-+++ src/backends/meta-screen-cast-stream-src.c
-@@ -29,6 +29,7 @@
- #include <spa/param/props.h>
- #include <spa/param/format-utils.h>
- #include <spa/param/video/format-utils.h>
-+#include <spa/utils/result.h>
- #include <stdint.h>
- #include <sys/mman.h>
-
-@@ -62,15 +63,6 @@ enum
-
- static guint signals[N_SIGNALS];
-
--typedef struct _MetaSpaType
--{
--  struct spa_type_media_type media_type;
--  struct spa_type_media_subtype media_subtype;
--  struct spa_type_format_video format_video;
--  struct spa_type_video_format video_format;
--  uint32_t meta_cursor;
--} MetaSpaType;
--
- typedef struct _MetaPipeWireSource
- {
-   GSource base;
-@@ -82,19 +74,19 @@ typedef struct _MetaScreenCastStreamSrcPrivate
- {
-   MetaScreenCastStream *stream;
-
-+  struct pw_context *pipewire_context;
-   struct pw_core *pipewire_core;
--  struct pw_remote *pipewire_remote;
--  struct pw_type *pipewire_type;
-   MetaPipeWireSource *pipewire_source;
--  struct spa_hook pipewire_remote_listener;
-+  struct spa_hook pipewire_core_listener;
-
-   gboolean is_enabled;
-
-   struct pw_stream *pipewire_stream;
-   struct spa_hook pipewire_stream_listener;
-+  uint32_t node_id;
-
--  MetaSpaType spa_type;
-   struct spa_video_info_raw video_format;
-+  int video_stride;
-
-   uint64_t last_frame_timestamp_us;
-
-@@ -112,8 +104,6 @@ G_DEFINE_TYPE_WITH_CODE (MetaScreenCastStreamSrc,
-                                                 meta_screen_cast_stream_src_init_initable_iface)
-                          G_ADD_PRIVATE (MetaScreenCastStreamSrc))
-
--#define PROP_RANGE(min, max) 2, (min), (max)
--
- static void
- meta_screen_cast_stream_src_get_specs (MetaScreenCastStreamSrc *src,
-                                        int                     *width,
-@@ -286,9 +276,6 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-                                                               int                      x,
-                                                               int                      y)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-
-   spa_meta_cursor->id = 1;
-@@ -300,7 +287,7 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   spa_meta_cursor->hotspot.x = 0;
-@@ -317,9 +304,6 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-                                                         int                      y,
-                                                         float                    scale)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   CoglTexture *cursor_texture;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-   int hotspot_x, hotspot_y;
-@@ -346,7 +330,7 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   meta_cursor_sprite_get_hotspot (cursor_sprite, &hotspot_x, &hotspot_y);
-@@ -382,12 +366,10 @@ static void
- add_cursor_metadata (MetaScreenCastStreamSrc *src,
-                      struct spa_buffer       *spa_buffer)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_cursor *spa_meta_cursor;
-
--  spa_meta_cursor = spa_buffer_find_meta (spa_buffer, spa_type->meta_cursor);
-+  spa_meta_cursor = spa_buffer_find_meta_data (spa_buffer, SPA_META_Cursor,
-+                                               sizeof (*spa_meta_cursor));
-   if (spa_meta_cursor)
-     meta_screen_cast_stream_src_set_cursor_metadata (src, spa_meta_cursor);
- }
-@@ -447,14 +429,14 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-     {
-       data = spa_buffer->datas[0].data;
-     }
--  else if (spa_buffer->datas[0].type == priv->pipewire_type->data.MemFd)
-+  else if (spa_buffer->datas[0].type == SPA_DATA_MemFd)
-     {
-       map = mmap (NULL, spa_buffer->datas[0].maxsize + spa_buffer->datas[0].mapoffset,
-                   PROT_READ | PROT_WRITE, MAP_SHARED,
-                   spa_buffer->datas[0].fd, 0);
-       if (map == MAP_FAILED)
-         {
--          g_warning ("Failed to mmap pipewire stream buffer: %s\n",
-+          g_warning ("Failed to mmap pipewire stream buffer: %s",
-                      strerror (errno));
-           return;
-         }
-@@ -469,28 +451,30 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-
-   if (meta_screen_cast_stream_src_record_frame (src, data))
-     {
--      struct spa_meta_video_crop *spa_meta_video_crop;
-+      struct spa_meta_region *spa_meta_video_crop;
-
-       spa_buffer->datas[0].chunk->size = spa_buffer->datas[0].maxsize;
-+      spa_buffer->datas[0].chunk->stride = priv->video_stride;
-
-       /* Update VideoCrop if needed */
-       spa_meta_video_crop =
--        spa_buffer_find_meta (spa_buffer, priv->pipewire_type->meta.VideoCrop);
-+        spa_buffer_find_meta_data (spa_buffer, SPA_META_VideoCrop,
-+                                   sizeof (*spa_meta_video_crop));
-       if (spa_meta_video_crop)
-         {
-           if (meta_screen_cast_stream_src_get_videocrop (src, &crop_rect))
-             {
--              spa_meta_video_crop->x = crop_rect.x;
--              spa_meta_video_crop->y = crop_rect.y;
--              spa_meta_video_crop->width = crop_rect.width;
--              spa_meta_video_crop->height = crop_rect.height;
-+              spa_meta_video_crop->region.position.x = crop_rect.x;
-+              spa_meta_video_crop->region.position.y = crop_rect.y;
-+              spa_meta_video_crop->region.size.width = crop_rect.width;
-+              spa_meta_video_crop->region.size.height = crop_rect.height;
-             }
-           else
-             {
--              spa_meta_video_crop->x = 0;
--              spa_meta_video_crop->y = 0;
--              spa_meta_video_crop->width = priv->stream_width;
--              spa_meta_video_crop->height = priv->stream_height;
-+              spa_meta_video_crop->region.position.x = 0;
-+              spa_meta_video_crop->region.position.y = 0;
-+              spa_meta_video_crop->region.size.width = priv->stream_width;
-+              spa_meta_video_crop->region.size.height = priv->stream_height;
-             }
-         }
-     }
-@@ -555,7 +539,6 @@ on_stream_state_changed (void                 *data,
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  uint32_t node_id;
-
-   switch (state)
-     {
-@@ -563,14 +546,12 @@ on_stream_state_changed (void                 *data,
-       g_warning ("pipewire stream error: %s", error_message);
-       meta_screen_cast_stream_src_notify_closed (src);
-       break;
--    case PW_STREAM_STATE_CONFIGURE:
--      node_id = pw_stream_get_node_id (priv->pipewire_stream);
--      g_signal_emit (src, signals[READY], 0, (unsigned int) node_id);
--      break;
--    case PW_STREAM_STATE_UNCONNECTED:
--    case PW_STREAM_STATE_CONNECTING:
--    case PW_STREAM_STATE_READY:
-     case PW_STREAM_STATE_PAUSED:
-+      if (priv->node_id == SPA_ID_INVALID && priv->pipewire_stream)
-+        {
-+          priv->node_id = pw_stream_get_node_id (priv->pipewire_stream);
-+          g_signal_emit (src, signals[READY], 0, (unsigned int) priv->node_id);
-+        }
-       if (meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_disable (src);
-       break;
-@@ -578,68 +559,69 @@ on_stream_state_changed (void                 *data,
-       if (!meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_enable (src);
-       break;
-+    case PW_STREAM_STATE_UNCONNECTED:
-+    case PW_STREAM_STATE_CONNECTING:
-+      break;
-     }
- }
-
- static void
--on_stream_format_changed (void                 *data,
--                          const struct spa_pod *format)
-+on_stream_param_changed (void                 *data,
-+                         uint32_t              id,
-+                         const struct spa_pod *format)
- {
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   uint8_t params_buffer[1024];
-   int32_t width, height, stride, size;
-   struct spa_pod_builder pod_builder;
-   const struct spa_pod *params[3];
-   const int bpp = 4;
-
--  if (!format)
--    {
--      pw_stream_finish_format (priv->pipewire_stream, 0, NULL, 0);
--      return;
--    }
-+  if (!format || id != SPA_PARAM_Format)
-+    return;
-
-   spa_format_video_raw_parse (format,
--                              &priv->video_format,
--                              &priv->spa_type.format_video);
-+                              &priv->video_format);
-
-   width = priv->video_format.size.width;
-   height = priv->video_format.size.height;
-   stride = SPA_ROUND_UP_N (width * bpp, 4);
-   size = height * stride;
-
-+  priv->video_stride = stride;
-+
-   pod_builder = SPA_POD_BUILDER_INIT (params_buffer, sizeof (params_buffer));
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idBuffers, pipewire_type->param_buffers.Buffers,
--    ":", pipewire_type->param_buffers.size, "i", size,
--    ":", pipewire_type->param_buffers.stride, "i", stride,
--    ":", pipewire_type->param_buffers.buffers, "iru", 16, PROP_RANGE (2, 16),
--    ":", pipewire_type->param_buffers.align, "i", 16);
--
--  params[1] = spa_pod_builder_object (
-+    SPA_TYPE_OBJECT_ParamBuffers, SPA_PARAM_Buffers,
-+    SPA_PARAM_BUFFERS_buffers, SPA_POD_CHOICE_RANGE_Int (16, 2, 16),
-+    SPA_PARAM_BUFFERS_blocks, SPA_POD_Int (1),
-+    SPA_PARAM_BUFFERS_size, SPA_POD_Int (size),
-+    SPA_PARAM_BUFFERS_stride, SPA_POD_Int (stride),
-+    SPA_PARAM_BUFFERS_align, SPA_POD_Int (16));
-+
-+  params[1] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", pipewire_type->meta.VideoCrop,
--    ":", pipewire_type->param_meta.size, "i", sizeof (struct spa_meta_video_crop));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_VideoCrop),
-+    SPA_PARAM_META_size, SPA_POD_Int (sizeof (struct spa_meta_region)));
-
--  params[2] = spa_pod_builder_object (
-+  params[2] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", priv->spa_type.meta_cursor,
--    ":", pipewire_type->param_meta.size, "i", CURSOR_META_SIZE (64, 64));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_Cursor),
-+    SPA_PARAM_META_size, SPA_POD_Int (CURSOR_META_SIZE (64, 64)));
-
--  pw_stream_finish_format (priv->pipewire_stream, 0,
--                           params, G_N_ELEMENTS (params));
-+  pw_stream_update_params (priv->pipewire_stream, params, G_N_ELEMENTS (params));
- }
-
- static const struct pw_stream_events stream_events = {
-   PW_VERSION_STREAM_EVENTS,
-   .state_changed = on_stream_state_changed,
--  .format_changed = on_stream_format_changed,
-+  .param_changed = on_stream_param_changed,
- };
-
- static struct pw_stream *
-@@ -652,8 +634,6 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   uint8_t buffer[1024];
-   struct spa_pod_builder pod_builder =
-     SPA_POD_BUILDER_INIT (buffer, sizeof (buffer));
--  MetaSpaType *spa_type = &priv->spa_type;
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   float frame_rate;
-   MetaFraction frame_rate_fraction;
-   struct spa_fraction max_framerate;
-@@ -661,7 +641,9 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   const struct spa_pod *params[1];
-   int result;
-
--  pipewire_stream = pw_stream_new (priv->pipewire_remote,
-+  priv->node_id = SPA_ID_INVALID;
-+
-+  pipewire_stream = pw_stream_new (priv->pipewire_core,
-                                    "meta-screen-cast-src",
-                                    NULL);
-   if (!pipewire_stream)
-@@ -682,17 +664,17 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   max_framerate = SPA_FRACTION (frame_rate_fraction.num,
-                                 frame_rate_fraction.denom);
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idEnumFormat, pipewire_type->spa_format,
--    "I", spa_type->media_type.video,
--    "I", spa_type->media_subtype.raw,
--    ":", spa_type->format_video.format, "I", spa_type->video_format.BGRx,
--    ":", spa_type->format_video.size, "R", &SPA_RECTANGLE (priv->stream_width,
--                                                           priv->stream_height),
--    ":", spa_type->format_video.framerate, "F", &SPA_FRACTION (0, 1),
--    ":", spa_type->format_video.max_framerate, "Fru", &max_framerate,
--                                                      PROP_RANGE (&min_framerate,
-+    SPA_TYPE_OBJECT_Format, SPA_PARAM_EnumFormat,
-+    SPA_FORMAT_mediaType, SPA_POD_Id (SPA_MEDIA_TYPE_video),
-+    SPA_FORMAT_mediaSubtype, SPA_POD_Id (SPA_MEDIA_SUBTYPE_raw),
-+    SPA_FORMAT_VIDEO_format, SPA_POD_Id (SPA_VIDEO_FORMAT_BGRx),
-+    SPA_FORMAT_VIDEO_size, SPA_POD_Rectangle (&SPA_RECTANGLE (priv->stream_width,
-+                                                              priv->stream_height)),
-+    SPA_FORMAT_VIDEO_framerate, SPA_POD_Fraction (&SPA_FRACTION (0, 1)),
-+    SPA_FORMAT_VIDEO_maxFramerate, SPA_POD_CHOICE_RANGE_Fraction (&max_framerate,
-+                                                                  &min_framerate,
-                                                                   &max_framerate));
-
-   pw_stream_add_listener (pipewire_stream,
-@@ -702,7 +684,7 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-
-   result = pw_stream_connect (pipewire_stream,
-                               PW_DIRECTION_OUTPUT,
--                              NULL,
-+                              SPA_ID_INVALID,
-                               (PW_STREAM_FLAG_DRIVER |
-                                PW_STREAM_FLAG_MAP_BUFFERS),
-                               params, G_N_ELEMENTS (params));
-@@ -717,40 +699,18 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
- }
-
- static void
--on_state_changed (void                 *data,
--                  enum pw_remote_state  old,
--                  enum pw_remote_state  state,
--                  const char           *error_message)
-+on_core_error (void       *data,
-+               uint32_t    id,
-+	       int         seq,
-+	       int         res,
-+	       const char *message)
- {
-   MetaScreenCastStreamSrc *src = data;
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_stream *pipewire_stream;
--  GError *error = NULL;
-
--  switch (state)
--    {
--    case PW_REMOTE_STATE_ERROR:
--      g_warning ("pipewire remote error: %s\n", error_message);
--      meta_screen_cast_stream_src_notify_closed (src);
--      break;
--    case PW_REMOTE_STATE_CONNECTED:
--      pipewire_stream = create_pipewire_stream (src, &error);
--      if (!pipewire_stream)
--        {
--          g_warning ("Could not create pipewire stream: %s", error->message);
--          g_error_free (error);
--          meta_screen_cast_stream_src_notify_closed (src);
--        }
--      else
--        {
--          priv->pipewire_stream = pipewire_stream;
--        }
--      break;
--    case PW_REMOTE_STATE_UNCONNECTED:
--    case PW_REMOTE_STATE_CONNECTING:
--      break;
--    }
-+  g_warning ("pipewire remote error: id:%u %s", id, message);
-+
-+  if (id == PW_ID_CORE && res == -EPIPE)
-+    meta_screen_cast_stream_src_notify_closed (src);
- }
-
- static gboolean
-@@ -793,17 +753,6 @@ static GSourceFuncs pipewire_source_funcs =
-   pipewire_loop_source_finalize
- };
-
--static void
--init_spa_type (MetaSpaType         *type,
--               struct spa_type_map *map)
--{
--  spa_type_media_type_map (map, &type->media_type);
--  spa_type_media_subtype_map (map, &type->media_subtype);
--  spa_type_format_video_map (map, &type->format_video);
--  spa_type_video_format_map (map, &type->video_format);
--  type->meta_cursor = spa_type_map_get_id(map, SPA_TYPE_META__Cursor);
--}
--
- static MetaPipeWireSource *
- create_pipewire_source (void)
- {
-@@ -829,9 +778,9 @@ create_pipewire_source (void)
-   return pipewire_source;
- }
-
--static const struct pw_remote_events remote_events = {
--  PW_VERSION_REMOTE_EVENTS,
--  .state_changed = on_state_changed,
-+static const struct pw_core_events core_events = {
-+  PW_VERSION_CORE_EVENTS,
-+  .error = on_core_error,
- };
-
- static gboolean
-@@ -851,37 +800,31 @@ meta_screen_cast_stream_src_initable_init (GInitable     *initable,
-       return FALSE;
-     }
-
--  priv->pipewire_core = pw_core_new (priv->pipewire_source->pipewire_loop,
--                                     NULL);
--  if (!priv->pipewire_core)
-+  priv->pipewire_context = pw_context_new (priv->pipewire_source->pipewire_loop,
-+                                           NULL, 0);
-+  if (!priv->pipewire_context)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Failed to create pipewire core");
-+                   "Failed to create pipewire context");
-       return FALSE;
-     }
-
--  priv->pipewire_remote = pw_remote_new (priv->pipewire_core, NULL, 0);
--  if (!priv->pipewire_remote)
-+  priv->pipewire_core = pw_context_connect (priv->pipewire_context, NULL, 0);
-+  if (!priv->pipewire_core)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't creat pipewire remote");
-+                   "Couldn't connect pipewire context");
-       return FALSE;
-     }
-
--  pw_remote_add_listener (priv->pipewire_remote,
--                          &priv->pipewire_remote_listener,
--                          &remote_events,
--                          src);
-+  pw_core_add_listener (priv->pipewire_core,
-+                        &priv->pipewire_core_listener,
-+                        &core_events,
-+                        src);
-
--  priv->pipewire_type = pw_core_get_type (priv->pipewire_core);
--  init_spa_type (&priv->spa_type, priv->pipewire_type->map);
--
--  if (pw_remote_connect (priv->pipewire_remote) != 0)
--    {
--      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't connect pipewire remote");
--      return FALSE;
--    }
-+  priv->pipewire_stream = create_pipewire_stream (src, error);
-+  if (!priv->pipewire_stream)
-+    return FALSE;
-
-   return TRUE;
- }
-@@ -912,8 +855,8 @@ meta_screen_cast_stream_src_finalize (GObject *object)
-     meta_screen_cast_stream_src_disable (src);
-
-   g_clear_pointer (&priv->pipewire_stream, pw_stream_destroy);
--  g_clear_pointer (&priv->pipewire_remote, pw_remote_destroy);
--  g_clear_pointer (&priv->pipewire_core, pw_core_destroy);
-+  g_clear_pointer (&priv->pipewire_core, pw_core_disconnect);
-+  g_clear_pointer (&priv->pipewire_context, pw_context_destroy);
-   g_source_destroy (&priv->pipewire_source->base);
-
-   G_OBJECT_CLASS (meta_screen_cast_stream_src_parent_class)->finalize (object);
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 806a3bef9f0..132cd9dd645 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,35 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=3
+version=3.36.3
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+ -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland
+ -Dxwayland_initfd=disabled"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From a3681ee4d22272e29eede1f881b03dec10b591fe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:38 +0600
Subject: [PATCH 38/65] gnome-shell: update to 3.36.3.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..ee4c6288f5f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb

From f2c338c51cbff9c6e651189e7339e2592ea36ddc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:46 +0600
Subject: [PATCH 39/65] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From ea1e912ac845664504c37a7b3c64355951a67af8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:53 +0600
Subject: [PATCH 40/65] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..16bc43fd0e7 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -13,15 +13,15 @@ configure_args="$(vopt_enable gir introspection)
 hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
-depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+depends="gnome-settings-daemon gnome-shell gnome-session gnome-themes-extra
+ gsettings-desktop-schemas xorg-server xorg-server-xwayland xrdb"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 879ca111d407fe0f9392cac3743054eb711bba1e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:00 +0600
Subject: [PATCH 41/65] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 72b6b9150221e6336349eb9b8a5aba533f234bfe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:07 +0600
Subject: [PATCH 42/65] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 58288f1a1c8643b53f55cc8e54676a0761b57c8b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:14 +0600
Subject: [PATCH 43/65] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 11150e85890220ee9de45be432fc30a19cb1774b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:21 +0600
Subject: [PATCH 44/65] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 7315d0d48f904b52a51e64e8f606c9588de46403 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:28 +0600
Subject: [PATCH 45/65] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 821abd4dee1e8f4ed667110142406e0eeb34acd2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:36 +0600
Subject: [PATCH 46/65] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From c362fd41d528c9398507231d23b6ef4b6ca010e2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:46 +0600
Subject: [PATCH 47/65] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 8f116a4be17ca3d43ab3e0f3d9a09fb94ac0dec3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:54 +0600
Subject: [PATCH 48/65] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From c8921aa4702f5ebbae853098cca9e764800d5860 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:01 +0600
Subject: [PATCH 49/65] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 2556edd631ed52381730c58993c2d7de9df1b0c6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:09 +0600
Subject: [PATCH 50/65] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 90358efa5eacae6fd01237778cb0b6dc8891122b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 16 Jun 2020 22:56:53 +0700
Subject: [PATCH 51/65] gnome-desktop: add do_check

---
 srcpkgs/gnome-desktop/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index c1a7408c207..ccd7c56569a 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -11,6 +11,7 @@ makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
  libxkbfile-devel libXrandr-devel gdk-pixbuf-devel"
 depends="bubblewrap gsettings-desktop-schemas iso-codes xkeyboard-config"
+checkdepends="$depends xorg-server-xvfb"
 short_desc="GNOME desktop management utilities"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
@@ -21,6 +22,22 @@ checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 build_options="gir"
 build_options_default="gir"
 
+do_check() {
+	# there is still 1 test fail for he_IL locale in musl
+	if test "$XBPS_TARGET_LIBC" != musl; then
+		local _pid
+		Xvfb :1 -screen 0 1366x768x24 &
+		_pid=$!
+		trap "kill $_pid" EXIT
+		trap 'exit 1' INT HUP TERM
+		export DISPLAY=:1
+		ninja -C build test
+		trap - EXIT INT HUP TERM
+		kill $_pid
+	fi
+}
+
+
 gnome-desktop-devel_package() {
 	depends="gtk+3-devel gsettings-desktop-schemas-devel>=3.12
 	 gdk-pixbuf-devel iso-codes libX11-devel libglib-devel libseccomp-devel

From 73fef8bd434078ab175b695cc67ae2dc32dd70ba Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 06:25:55 +0700
Subject: [PATCH 52/65] gnome-settings-daemon: fix checkdepends

---
 srcpkgs/gnome-settings-daemon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index 9ceb1d13de9..f4539a72d43 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -12,7 +12,7 @@ makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-dev
  xf86-input-wacom-devel"
 depends="hicolor-icon-theme pulseaudio"
 checkdepends="elogind libnotify python3-dbusmock python3-gobject
- python3-pycodestyle"
+ python3-pycodestyle which hwids eudev"
 short_desc="GNOME settings daemon"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"

From 273a8b47fb568de3b90723ff840329d8c95b07fa Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 07:44:12 +0700
Subject: [PATCH 53/65] mutter: skip do_check

---
 srcpkgs/mutter/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 132cd9dd645..117b59a29a9 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -22,6 +22,10 @@ checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
 shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
  libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
+do_check() {
+	msg_warn "xvfb does not work\n"
+}
+
 mutter-devel_package() {
 	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
 	 libX11-devel libXtst-devel mutter-${version}_${revision}"

From 7089901163884a9755b20ca0923049e81f6ec0dc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 21 Jun 2020 22:53:03 +0700
Subject: [PATCH 54/65] evolution-data-server: split vala build option from gir

---
 srcpkgs/evolution-data-server/template | 48 ++++++++++++--------------
 1 file changed, 23 insertions(+), 25 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index ebf8145f88c..d44a7ccc143 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -2,45 +2,41 @@
 pkgname=evolution-data-server
 version=3.36.3
 revision=1
+_basever=${version%.*}
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
- $(vopt_if gir '-DENABLE_INTROSPECTION=ON -DENABLE_VALA_BINDINGS=ON' '-DENABLE_WEATHER=OFF')"
+ $(vopt_if gir -DENABLE_INTROSPECTION=ON)
+ $(vopt_if vala -DENABLE_VALA_BINDINGS=ON)"
 hostmakedepends="flex glib-devel gperf intltool pkg-config libglib-devel
- $(vopt_if gir 'gobject-introspection')"
-makedepends="boost-devel libcanberra-devel libgdata-devel $(vopt_if gir libgweather-devel)
- libical-devel libsecret-devel mit-krb5-devel $(vopt_if gir 'vala-devel') webkit2gtk-devel"
-depends="$(vopt_if gir libgweather) libsoup-gnome"
+ $(vopt_if vala vala)"
+makedepends="boost-devel libcanberra-devel libgdata-devel libical-devel
+ libsecret-devel mit-krb5-devel webkit2gtk-devel libgweather-devel
+ $(vopt_if vala vala-devel)"
+depends="libgweather libsoup-gnome dbus tzdata"
+checkdepends="$depends"
 short_desc="Centralized access to appointments and contacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
-changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
-distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+changelog="https://raw.githubusercontent.com/GNOME/$pkgname/gnome-${_basever/./-}/NEWS"
+distfiles="${GNOME_SITE}/${pkgname}/${_basever}/${pkgname}-${version}.tar.xz"
 checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
-build_options="gir"
+build_options="gir vala"
 if [ -z "$CROSS_BUILD" ]; then
-	build_options_default="gir"
+	build_options_default="gir vala"
 fi
 
-# cmake perfomrms 2 checks using binary runtime, about iconv and sfrtime.
-# musl (1.1.16) does not support "ISO-2022-JP" encoding (see its roadmap),
-# although evolution-data-server is fine with musl.
-# If crossbuild, cmake let disabling runtime checks via specific directives.
-# test iconv-detect.c also generates iconv-detect.h that is required for build.
-# So completly disable test from iconv-detect.c (cmake.patch file) and
-# use a cmake cache file on crossbuild to disable sfrtime running test.
-if [ "$CROSS_BUILD" ]; then
-	configure_args+=" -C disableRuntimeTests.cmake"
-fi
 
-pre_configure() {
-	mkdir -p build
-	cp ${FILESDIR}/iconv-detect.h ${wrksrc}/build/.
-	if [ "$CROSS_BUILD" ]; then
-		cp ${FILESDIR}/disableRuntimeTests.cmake ${wrksrc}/build/.
-	fi
+do_check() {
+	cd build
+	# TODO This test is problematic, first run usually fail
+	# Signify something wrong with evolution-data-server on first run
+	ctest -R test-book-client-custom-summary || true
+	# make test run ctest --force-new-ctest-process which is problematic
+	# noone should run multiple instance of evolution-data-server irl.
+	ctest
 }
 
 post_install() {
@@ -59,6 +55,8 @@ evolution-data-server-devel_package() {
 		vmove "usr/lib/*.so"
 		if [ "$build_option_gir" ]; then
 			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
 			vmove usr/share/vala
 		fi
 	}

From 1700adcd2676e9522b85d55d117503b1ac347e00 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:51:31 +0700
Subject: [PATCH 55/65] folks: add build option gir and vala

Disable gir and vala in evolution-data-server will make folks failed to
be built.

Either enable both of them, or disable both of them.
---
 srcpkgs/folks/template | 20 +++++++++++++++-----
 1 file changed, 15 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index e21ca9c1077..e41d63e4f5e 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -5,10 +5,11 @@ revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Db_lto=false"
-hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
- gobject-introspection evolution-data-server-devel"
+hostmakedepends="pkg-config intltool glib-devel python3 python3-dbusmock
+ evolution-data-server-devel $(vopt_if vala vala)"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
- libgee08-devel evolution-data-server-devel tracker-devel"
+ libgee08-devel evolution-data-server-devel tracker-devel
+ $(vopt_if vala vala-devel)"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
@@ -17,6 +18,11 @@ homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
+build_options="gir vala"
+if [ -z "$CROSS_BUILD" ]; then
+	build_options_default="gir vala"
+fi
+
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
@@ -24,7 +30,11 @@ folks-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove "usr/lib/*.so"
-		vmove usr/share/vala
-		vmove usr/share/gir-1.0
+		if [ "$build_option_gir" ]; then
+			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
+			vmove usr/share/vala
+		fi
 	}
 }

From 86018e3b2663f533000b02e7d35eac8e367d7278 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:52:50 +0700
Subject: [PATCH 56/65] nautilus: correct checkdepends

---
 srcpkgs/nautilus/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 94cb10492ca..c6faf7bf3d7 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -11,7 +11,7 @@ makedepends="exempi-devel gnome-autoar-devel gnome-desktop-devel gtk+3-devel
  libX11-devel libxml2-devel tracker-devel gst-plugins-base1-devel"
 depends="desktop-file-utils gsettings-desktop-schemas hicolor-icon-theme
  tracker-miners tracker"
-checkdepends="tracker"
+checkdepends="tracker tracker-miners"
 short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"

From 57d1ae0957ddbd82f1cb8549e3d01f394a0c2d03 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:53:14 +0700
Subject: [PATCH 57/65] tracker: add tar to checkdepends

---
 srcpkgs/tracker/template | 1 +
 1 file changed, 1 insertion(+)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index e814f77c711..19338db45e1 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -11,6 +11,7 @@ hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
+checkdepends="tar"
 short_desc="Personal search tool and storage system"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"

From 2b3aca95f3000ecbb72b318dec624efa3e36ea34 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 24 Jun 2020 23:18:40 +0700
Subject: [PATCH 58/65] gnome-shell: add do_check

---
 srcpkgs/gnome-shell/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index ee4c6288f5f..deb922a09ad 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -15,6 +15,7 @@ makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  network-manager-applet-devel polkit-devel pulseaudio-devel
  startup-notification-devel telepathy-logger-devel gnome-autoar-devel"
 depends="caribou elogind glxinfo gnome-control-center gsettings-desktop-schemas upower"
+checkdepends="$depends accountsservice gdm xorg-server-xvfb pipewire mesa-dri dbus-x11"
 short_desc="GNOME core user interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
@@ -22,3 +23,19 @@ homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb
+
+do_check() {
+	local _pid
+	export DISPLAY=:1
+	export XDG_RUNTIME_DIR=/tmp
+	Xvfb :1 -screen 0 1366x768x24 &
+	_pid=$!
+	trap "kill $_pid" EXIT
+	trap 'exit 1' INT HUP TERM
+	eval $(dbus-launch)
+	export DBUS_SESSION_BUS_ADDRESS
+	ninja test -C build
+	# trap is hanging on normal exit, dbus?
+	trap - EXIT INT HUP TERM
+	kill $_pid || true
+}

From ec00257d42a574bc1341f9d6ea635ad8de034abc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 11:12:34 +0700
Subject: [PATCH 59/65] fixup! evolution-data-server: split vala build option
 from gir

---
 srcpkgs/evolution-data-server/template | 1 -
 1 file changed, 1 deletion(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index d44a7ccc143..3639e1b1120 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -28,7 +28,6 @@ if [ -z "$CROSS_BUILD" ]; then
 	build_options_default="gir vala"
 fi
 
-
 do_check() {
 	cd build
 	# TODO This test is problematic, first run usually fail

From f46c946426d5c3162f2a99bd6db89d2b6238a6b4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 11:13:53 +0700
Subject: [PATCH 60/65] fixup! gnome-podcasts: update to 0.4.7.

---
 srcpkgs/gnome-podcasts/template | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 3c239df8424..7a5b0d0a168 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -19,10 +19,11 @@ export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-if [ "$CROSS_BUILD" ]; then
-	post_patch() {
+post_patch() {
+	if [ "$CROSS_BUILD" ]; then
 		vsed -i scripts/cargo.sh \
 			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
 			-e '/CARGO_HOME/d'
-	}
-fi
+	fi
+	cargo update --package openssl-sys --precise 0.9.58
+}

From 5ec5c80284d3bd5ee20f2fab05eef8417f254fa1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 11:14:51 +0700
Subject: [PATCH 61/65] fixup! evolution: update to 3.36.3.

---
 .../evolution/files/disableRuntimeTests.cmake | 45 -------------------
 srcpkgs/evolution/files/iconv-detect.h        |  5 ---
 srcpkgs/evolution/template                    | 31 ++-----------
 3 files changed, 4 insertions(+), 77 deletions(-)
 delete mode 100644 srcpkgs/evolution/files/disableRuntimeTests.cmake
 delete mode 100644 srcpkgs/evolution/files/iconv-detect.h

diff --git a/srcpkgs/evolution/files/disableRuntimeTests.cmake b/srcpkgs/evolution/files/disableRuntimeTests.cmake
deleted file mode 100644
index 8be55b42070..00000000000
--- a/srcpkgs/evolution/files/disableRuntimeTests.cmake
+++ /dev/null
@@ -1,45 +0,0 @@
-# This file was generated by CMake because it detected TRY_RUN() commands
-# in crosscompiling mode. It will be overwritten by the next CMake run.
-# Copy it to a safe location, set the variables to appropriate values
-# and use it then to preset the CMake cache (using -C).
-
-
-# _correct_iconv_EXITCODE
-#    indicates whether the executable would have been able to run on its
-#    target platform. If so, set _correct_iconv_EXITCODE to
-#    the exit code (in many cases 0 for success), otherwise enter "FAILED_TO_RUN".
-# The _correct_iconv_COMPILED variable holds the build result for this TRY_RUN().
-# 
-# Source file   : /builddir/evolution-data-server-3.26.0/build/CMakeFiles/CMakeTmp/src.c
-# Executable    : /builddir/evolution-data-server-3.26.0/build/CMakeFiles/cmTC_315ee-_correct_iconv_EXITCODE
-# Run arguments : 
-#    Called from: [2]	/usr/share/cmake-3.9/Modules/CheckCSourceRuns.cmake
-#                 [1]	/builddir/evolution-data-server-3.26.0/CMakeLists.txt
-
-set( _correct_iconv_EXITCODE 
-     0
-     CACHE INTERNAL "Result from TRY_RUN" FORCE)
-set(_correct_iconv_EXITCODE__TRYRUN_OUTPUT
-     0
-     CACHE INTERNAL "Result from TRY_RUN" FORCE)
-
-
-# HAVE_LKSTRFTIME_EXITCODE
-#    indicates whether the executable would have been able to run on its
-#    target platform. If so, set HAVE_LKSTRFTIME_EXITCODE to
-#    the exit code (in many cases 0 for success), otherwise enter "FAILED_TO_RUN".
-# The HAVE_LKSTRFTIME_COMPILED variable holds the build result for this TRY_RUN().
-# 
-# Source file   : /builddir/evolution-data-server-3.26.0/build/CMakeFiles/CMakeTmp/src.c
-# Executable    : /builddir/evolution-data-server-3.26.0/build/CMakeFiles/cmTC_d2897-HAVE_LKSTRFTIME_EXITCODE
-# Run arguments : 
-#    Called from: [2]	/usr/share/cmake-3.9/Modules/CheckCSourceRuns.cmake
-#                 [1]	/builddir/evolution-data-server-3.26.0/CMakeLists.txt
-
-set( HAVE_LKSTRFTIME_EXITCODE 
-     0
-     CACHE INTERNAL "Result from TRY_RUN" FORCE)
-set( HAVE_LKSTRFTIME_EXITCODE__TRYRUN_OUTPUT
-     0
-     CACHE INTERNAL "Result from TRY_RUN" FORCE)
-
diff --git a/srcpkgs/evolution/files/iconv-detect.h b/srcpkgs/evolution/files/iconv-detect.h
deleted file mode 100644
index 46f476d5bc9..00000000000
--- a/srcpkgs/evolution/files/iconv-detect.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/* This is an auto-generated header, DO NOT EDIT! */
-
-#define ICONV_ISO_D_FORMAT "iso-%d-%d"
-#define ICONV_ISO_S_FORMAT "iso-%d-%s"
-#define ICONV_10646 "iso-10646"
diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index d95c07eb72c..9f33078cf1e 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -5,12 +5,12 @@ revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
  -DENABLE_TEXT_HIGHLIGHT=OFF -DENABLE_PST_IMPORT=OFF
- -DENABLE_WEATHER=$(vopt_if gir ON OFF)"
+ -DENABLE_WEATHER=ON"
 hostmakedepends="gnome-doc-utils gobject-introspection intltool itstool
- pkg-config"
+ pkg-config glib-devel"
 makedepends="NetworkManager-devel clutter-gtk-devel enchant2-devel
  evolution-data-server-devel gspell-devel gtkhtml-devel libcanberra-devel
- $(vopt_if gir libgweather-devel) libnotify-devel webkit2gtk-devel ytnef-devel
+ libgweather-devel libnotify-devel webkit2gtk-devel ytnef-devel
  gnome-desktop-devel"
 depends="gnome-keyring"
 short_desc="Integrated mail, addressbook and calendaring for GNOME"
@@ -24,30 +24,7 @@ shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 
 build_options="gir"
-if [ -z "$CROSS_BUILD" ]; then
-	build_options_default="gir"
-else
-	hostmakedepends+=" glib-devel"
-fi
-
-# cmake perfomrms 2 checks using binary runtime, about iconv and sfrtime.
-# musl (1.1.16) does not support "ISO-2022-JP" encoding (see its roadmap),
-# although evolution-data-server is fine with musl.
-# If crossbuild, cmake let disabling runtime checks via specific directives.
-# test iconv-detect.c also generates iconv-detect.h that is required for build.
-# So completly disable test from iconv-detect.c (cmake.patch file) and
-# use a cmake cache file on crossbuild to disable sfrtime running test.
-if [ "$CROSS_BUILD" ]; then
-	configure_args+=" -C disableRuntimeTests.cmake"
-fi
-
-pre_configure() {
-	mkdir -p build
-	cp ${FILESDIR}/iconv-detect.h ${wrksrc}/build/.
-	if [ "$CROSS_BUILD" ]; then
-		cp ${FILESDIR}/disableRuntimeTests.cmake ${wrksrc}/build/.
-	fi
-}
+build_options_default="gir"
 
 evolution-devel_package() {
 	depends="webkit2gtk-devel gtk+3-devel libglib-devel evolution-data-server-devel

From 82c239fd27862d7ab13efb654cf728a50fcd3298 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 13:35:57 +0700
Subject: [PATCH 62/65] fixup! fixup! evolution-data-server: split vala build
 option from gir

---
 .../patches/no-clear-ldflags.patch                    | 11 +++++++++++
 srcpkgs/evolution-data-server/template                |  8 +++++---
 2 files changed, 16 insertions(+), 3 deletions(-)
 create mode 100644 srcpkgs/evolution-data-server/patches/no-clear-ldflags.patch

diff --git a/srcpkgs/evolution-data-server/patches/no-clear-ldflags.patch b/srcpkgs/evolution-data-server/patches/no-clear-ldflags.patch
new file mode 100644
index 00000000000..b562ef36f36
--- /dev/null
+++ b/srcpkgs/evolution-data-server/patches/no-clear-ldflags.patch
@@ -0,0 +1,11 @@
+--- cmake/modules/GObjectIntrospection.cmake.orig	2020-07-06 22:29:51.799291082 +0700
++++ cmake/modules/GObjectIntrospection.cmake	2020-07-06 22:29:58.798371117 +0700
+@@ -122,7 +122,7 @@
+ 		file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/${_gir_name}_files "${_gir_files}")
+ 
+ 		add_custom_command(
+-			COMMAND ${CMAKE_COMMAND} -E env "CC='${CMAKE_C_COMPILER}'" LDFLAGS=
++			COMMAND ${CMAKE_COMMAND} -E env "CC='${CMAKE_C_COMPILER}'"
+ 				${INTROSPECTION_SCANNER_ENV}
+ 				${G_IR_SCANNER}
+ 				${INTROSPECTION_SCANNER_ARGS}
diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 3639e1b1120..080176155a9 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -30,12 +30,14 @@ fi
 
 do_check() {
 	cd build
-	# TODO This test is problematic, first run usually fail
+	# TODO This test is problematic, fail intermittent, especially on
+	# first clean run.
 	# Signify something wrong with evolution-data-server on first run
-	ctest -R test-book-client-custom-summary || true
 	# make test run ctest --force-new-ctest-process which is problematic
+	# make test run ctest --force-new-ctest-process which is problematic
+	# noone should run multiple instance of evolution-data-server irl.
 	# noone should run multiple instance of evolution-data-server irl.
-	ctest
+	ctest -E test-book-client-custom-summary
 }
 
 post_install() {

From a3f732aa4ebfb940a999b85151232b1a471cb98f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 13:36:48 +0700
Subject: [PATCH 63/65] fixup! at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index aa7b8839c9f..591cc4aafa4 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -12,6 +12,10 @@ homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
+do_check() {
+	: wants dbus
+}
+
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"

From 79af42cb55e88eee69bd3fb9e4d5a52c37297eae Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 13:37:24 +0700
Subject: [PATCH 64/65] fixup! at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index fb799af7e52..beee578d015 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -17,6 +17,10 @@ checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 build_options="gir"
 build_options_default="gir"
 
+do_check() {
+	: "wants DBus?"
+}
+
 post_install() {
 	rm -rf ${DESTDIR}/usr/lib/systemd
 }

From a1816a8656ea9939f1fbd3aa2831675b8adf5158 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 15:51:56 +0700
Subject: [PATCH 65/65] fixup! totem: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/totem/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index e4186632153..e7db9702c38 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -32,6 +32,10 @@ disable_parallel_build=yes
 build_options="gir vala"
 build_options_default="gir vala"
 
+do_check() {
+	: skip
+}
+
 libtotem_package() {
 	short_desc+=" - runtime library"
 	pkg_install() {

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (78 preceding siblings ...)
  2020-07-12  8:53 ` sgn
@ 2020-07-12  9:46 ` sgn
  2020-07-12 13:18 ` sgn
                   ` (7 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: sgn @ 2020-07-12  9:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1833 bytes --]

There is an updated pull request by sgn against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

gnome 3.36 updates
<details>
<summary><i>List of updates : </i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.3
 * evolution -> 3.36.3
 * evolution-data-server -> 3.36.3
 * evolution-ews -> 3.36.3
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.3
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.3
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.3
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.3
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.3
 * nautilus -> 3.36.3
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * python3-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built natively in `x86_64` and crossbuilt for `armv7l`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 766728 bytes --]

From 5b06b6bcabd13139a9312189a9e4eb3619dca13f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:42:53 +0600
Subject: [PATCH 01/66] gnome-desktop: update to 3.36.2.

Closes: #21382
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 00a0af53fcb..a34afe4079c 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1182,7 +1182,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 5ab0584e48f995c803280de3281db11ef9257a0c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:18 +0600
Subject: [PATCH 02/66] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 3eeb42680a941b5193aa94c1a582c6be618d36a1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:25 +0600
Subject: [PATCH 03/66] nautilus: update to 3.36.3.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..94cb10492ca 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=b6cafc7ab1e70a64383de391b6097fcccbf36b208f8502d8c46423224fd30ef8
 
 build_options="gir"
 build_options_default="gir"

From 2aa54ef7059ad64fac9467dab327f49819ff61ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:32 +0600
Subject: [PATCH 04/66] gnome-music: update to 3.36.3.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..2273ac1ca16 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.3
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=54f8d240f8995f4cff4dce5e1cbdc60befc81d79bf72c1e4fd807ed05c114237
 lib32disabled=yes

From e6f28780516d17e4737864085e83dcf5e6338656 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:38 +0600
Subject: [PATCH 05/66] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 3d8f7c7c70626afc0489323d0c5621e316365f67 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:51 +0600
Subject: [PATCH 06/66] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index e4cacb7079e..cfa1cf57594 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 2125c9346112fefb7defa198d2c7390e417b15e9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:07 +0600
Subject: [PATCH 07/66] gnome-maps: update to 3.36.2.

... and unmark nocross.
---
 common/shlibs               | 1 +
 srcpkgs/gnome-maps/template | 8 ++++----
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index a34afe4079c..048cce8c9bb 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -622,6 +622,7 @@ libcanberra-gtk3.so.0 libcanberra-gtk3-0.30_6
 libgtop-2.0.so.11 libgtop-2.38.0_1
 librarian.so.0 rarian-0.8.1_1
 libmusikcore.so musikcube-0.60.1_1
+libgnome-maps.so.0 gnome-maps-3.36.2_1
 libgnome-menu-3.so.0 gnome-menus-2.91.6_1
 libart_lgpl_2.so.2 libart-2.3.20_1
 libgnomecanvas-2.so.0 libgnomecanvas-2.30.1_1
diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..a67d84f4396 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,9 +1,10 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
+build_helper="gir"
+hostmakedepends="glib-devel gjs-devel intltool pkg-config AppStream"
 makedepends="folks-devel geoclue2-devel geocode-glib-devel gjs-devel
  gnome-desktop-devel libchamplain-devel rest-devel"
 depends="geoclue2 gfbgraph gjs"
@@ -12,5 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
-nocross="evolution-dataserver cross gir doesn't work"
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784

From 27a655dbf2972717051574de1d7c4b1aa516f47e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:14 +0600
Subject: [PATCH 08/66] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 85b558d1fbe66ae29d5362e34183161ba9fe042d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:21 +0600
Subject: [PATCH 09/66] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From bdb94f0ad12720156d46e4a9fcbea09ba1c04bc3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:29 +0600
Subject: [PATCH 10/66] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From acdd3123322e995b0a4a338639e38ae7c4c02a5c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:36 +0600
Subject: [PATCH 11/66] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From a65314ebfe78c1e3da4289460ed3ec280f22165c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:44 +0600
Subject: [PATCH 12/66] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 7aac73e711527ebea2eec425bf1d8e4c3b3e3647 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:52 +0600
Subject: [PATCH 13/66] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 97b19d883438b688488206dd37bcccc286212280 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:01 +0600
Subject: [PATCH 14/66] gnome-control-center: update to 3.36.3.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..53a555525b4 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=bc174d970dbeca3ee19c26019de31e9edf78dc9c4abde16e763566ee38c3691c
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 009a6bf7771c630d0977636761000b6d79098c75 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:08 +0600
Subject: [PATCH 15/66] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From dd5869bebb9cb097ee9c1098023a5611a191d077 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:27 +0600
Subject: [PATCH 16/66] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 317b4eb403f0c834d8c771bff1498499c766115f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:36 +0600
Subject: [PATCH 17/66] gnome-initial-setup: update to 3.36.3.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..caa33c2695e 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.3
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=d8a933f8c822cc293cc10b532779f8562342ae2271b929879e8f108491f4c285

From 924364108d8bc1b683491286978ccbd90e94c364 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:43 +0600
Subject: [PATCH 18/66] evolution-data-server: update to 3.36.3.

---
 srcpkgs/evolution-data-server/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 4ae820be068..ebf8145f88c 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,7 +1,7 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
-revision=2
+version=3.36.3
+revision=1
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 158dcfc729aa2f4efdd957cff82413bdf13655a7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:56 +0600
Subject: [PATCH 19/66] evolution: update to 3.36.3.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..d95c07eb72c 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=54e16caa286c02d4fe94b43e33abf5cd6f3a1502181bb8cf557aadc886b5ca03
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 31fad1952c51863004769f9dc7f31bdb9d43090c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:04 +0600
Subject: [PATCH 20/66] evolution-ews: update to 3.36.3.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..38fd62d39e1 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=7a97a59b10f7a48a3bcf6d476c6a2c068ec5c48c546a433812691b8301752d04

From 1a50b9426ef21b5512687e3d79f11a68496af12b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:11 +0600
Subject: [PATCH 21/66] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 94ce682408c3ba5d5ae7c9f60a6ed9ec7163d074 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:19 +0600
Subject: [PATCH 22/66] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 328af4215af6b60a60c6fca93110cda4ea8c21f2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:26 +0600
Subject: [PATCH 23/66] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 04f974f90ebf8dd526293112fdcb903320b69975 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:41 +0600
Subject: [PATCH 24/66] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index 0141d97f85d..4881056ad76 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,8 +1,8 @@
 # Template file for 'python-atspi'
 # Keep python3-atspi in sync
 pkgname=python-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From 1cffb422761ba8ac0b2b5d7a49a39af7eecbb0df Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:48 +0600
Subject: [PATCH 25/66] python3-atspi: update to 2.36.0.

---
 srcpkgs/python3-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-atspi/template b/srcpkgs/python3-atspi/template
index a33a374fe18..b2360822acf 100644
--- a/srcpkgs/python3-atspi/template
+++ b/srcpkgs/python3-atspi/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-atspi'
 pkgname=python3-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From 9402bde5011b7a5dce9823d409d82ad55071e703 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:56 +0600
Subject: [PATCH 26/66] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 048cce8c9bb..196eb3eadfc 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -839,9 +839,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From a79d76edfcd575775bffd57b67ecad67f8596b5b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:03 +0600
Subject: [PATCH 27/66] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 0eb800ec0a232740979ab48be8ecfc26439c17a1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:10 +0600
Subject: [PATCH 28/66] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..10ab8d79264 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,13 +1,13 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
+hostmakedepends="gettext docbook-xsl glib-devel libxslt pkg-config vala"
 makedepends="dconf-devel gtk+3-devel"
 short_desc="Low-level configuration system - GTK+ editor"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From c854560d2857d809b94b0165f6b5e485e229dcd2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:16 +0600
Subject: [PATCH 29/66] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 37074cb348d..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
-revision=2
+version=2.3.4
+revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 36a067d142df691e092d45409bb70459a6c3ff51 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:23 +0600
Subject: [PATCH 30/66] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 01e66f9ed1c51da02519717de6840f76f37f7596 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:39 +0600
Subject: [PATCH 31/66] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 0b0397e8150aea51ff103047ac7b217dfcbeb492 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:47 +0600
Subject: [PATCH 32/66] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 196eb3eadfc..6991365f14a 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -570,7 +570,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 45ffb11af84e0994a465e09bd67cbc4c56c73901 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:54 +0600
Subject: [PATCH 33/66] metacity: update to 3.36.1.

---
 common/shlibs                                 |  1 +
 .../patches/compositor-vulkan-fix-build.patch | 29 +++++++++++++++++++
 srcpkgs/metacity/template                     |  4 +--
 3 files changed, 32 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch

diff --git a/common/shlibs b/common/shlibs
index 6991365f14a..dc40316a92d 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -572,6 +572,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
new file mode 100644
index 00000000000..960582ded7d
--- /dev/null
+++ b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
@@ -0,0 +1,29 @@
+From 99361f28c8763ea4569b5ae9876028d53ac9a234 Mon Sep 17 00:00:00 2001
+From: Alberts Muktupāvels <alberts.muktupavels@gmail.com>
+Date: Sun, 24 May 2020 13:58:51 +0300
+Subject: [PATCH] compositor-vulkan: fix build
+
+VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE enum was removed in 1.2.140.
+
+https://gitlab.gnome.org/GNOME/metacity/-/issues/10
+---
+ src/compositor/meta-compositor-vulkan.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git src/compositor/meta-compositor-vulkan.c src/compositor/meta-compositor-vulkan.c
+index b87b5194..53b7b3ff 100644
+--- src/compositor/meta-compositor-vulkan.c
++++ src/compositor/meta-compositor-vulkan.c
+@@ -810,7 +810,9 @@ device_type_to_string (VkPhysicalDeviceType type)
+         return "cpu";
+         break;
+ 
++#if VK_HEADER_VERSION < 140
+       case VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE:
++#endif
+       case VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM:
+       default:
+         break;
+-- 
+GitLab
+
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 7fb86fd964c..7e22aeab5c7 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,6 +1,6 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
 hostmakedepends="gettext gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From e2e44026a1967664875a0dd2a416cf3ad0c5ecad Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:01 +0600
Subject: [PATCH 34/66] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 8e451546ff3c8d564dcd216c80c59fa0cdf6a7b7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:09 +0600
Subject: [PATCH 35/66] gnome-flashback: update to 3.36.3.

Added PAM config to enable screen locking.
---
 .../gnome-flashback/files/gnome-flashback.pam |  6 ++++
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 27 ++++++++++++------
 3 files changed, 52 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/files/gnome-flashback.pam
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/files/gnome-flashback.pam b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
new file mode 100644
index 00000000000..ebbb51dd0e8
--- /dev/null
+++ b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth       include	system-auth
+auth       optional     pam_gnome_keyring.so
+account    include	system-auth
+password   include	system-auth
+session    include	system-auth
diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..08566df5fd4 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,29 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="gettext-devel pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vinstall ${FILESDIR}/gnome-flashback.pam 644 /etc/pam.d gnome-flashback
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 08356c8b5c07b68cca47a05e7af214738605d719 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:24 +0600
Subject: [PATCH 36/66] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 23cee18f5fcd4d95109e915c7c08e2763f68c026 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:30 +0600
Subject: [PATCH 37/66] mutter: update to 3.36.3.

---
 common/shlibs                                 |  18 +-
 .../patches/fix-cogl-egl-includes.patch       |  11 -
 srcpkgs/mutter/patches/pipewire-0.3.patch     | 521 ------------------
 srcpkgs/mutter/template                       |  27 +-
 4 files changed, 23 insertions(+), 554 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
 delete mode 100644 srcpkgs/mutter/patches/pipewire-0.3.patch

diff --git a/common/shlibs b/common/shlibs
index dc40316a92d..acc53a02412 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3019,15 +3019,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.3_1
+libmutter-clutter-6.so mutter-3.36.3_1
+libmutter-clutter-6.so.0 mutter-3.36.3_1
+libmutter-cogl-path-6.so mutter-3.36.3_1
+libmutter-cogl-path-6.so.0 mutter-3.36.3_1
+libmutter-cogl-6.so mutter-3.36.3_1
+libmutter-cogl-6.so.0 mutter-3.36.3_1
+libmutter-cogl-pango-6.so mutter-3.36.3_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.3_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/patches/pipewire-0.3.patch b/srcpkgs/mutter/patches/pipewire-0.3.patch
deleted file mode 100644
index ebff65fba85..00000000000
--- a/srcpkgs/mutter/patches/pipewire-0.3.patch
+++ /dev/null
@@ -1,521 +0,0 @@
-Build mutter against pipewire-0.3, based on a patch at:
-https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1062
---- meson.build
-+++ meson.build
-@@ -50,7 +50,7 @@ libinput_req = '>= 1.7'
- gbm_req = '>= 10.3'
-
- # screen cast version requirements
--libpipewire_req = '>= 0.2.5'
-+libpipewire_req = '>= 0.3.0'
-
- gnome = import('gnome')
- pkg = import('pkgconfig')
-@@ -241,7 +241,7 @@ endif
-
- have_remote_desktop = get_option('remote_desktop')
- if have_remote_desktop
--  libpipewire_dep = dependency('libpipewire-0.2', version: libpipewire_req)
-+  libpipewire_dep = dependency('libpipewire-0.3', version: libpipewire_req)
- endif
-
- have_introspection = get_option('introspection')
-diff --git a/src/backends/meta-screen-cast-stream-src.c b/src/backends/meta-screen-cast-stream-src.c
-index 82c5cba436..ba1ce94a7e 100644
---- src/backends/meta-screen-cast-stream-src.c
-+++ src/backends/meta-screen-cast-stream-src.c
-@@ -29,6 +29,7 @@
- #include <spa/param/props.h>
- #include <spa/param/format-utils.h>
- #include <spa/param/video/format-utils.h>
-+#include <spa/utils/result.h>
- #include <stdint.h>
- #include <sys/mman.h>
-
-@@ -62,15 +63,6 @@ enum
-
- static guint signals[N_SIGNALS];
-
--typedef struct _MetaSpaType
--{
--  struct spa_type_media_type media_type;
--  struct spa_type_media_subtype media_subtype;
--  struct spa_type_format_video format_video;
--  struct spa_type_video_format video_format;
--  uint32_t meta_cursor;
--} MetaSpaType;
--
- typedef struct _MetaPipeWireSource
- {
-   GSource base;
-@@ -82,19 +74,19 @@ typedef struct _MetaScreenCastStreamSrcPrivate
- {
-   MetaScreenCastStream *stream;
-
-+  struct pw_context *pipewire_context;
-   struct pw_core *pipewire_core;
--  struct pw_remote *pipewire_remote;
--  struct pw_type *pipewire_type;
-   MetaPipeWireSource *pipewire_source;
--  struct spa_hook pipewire_remote_listener;
-+  struct spa_hook pipewire_core_listener;
-
-   gboolean is_enabled;
-
-   struct pw_stream *pipewire_stream;
-   struct spa_hook pipewire_stream_listener;
-+  uint32_t node_id;
-
--  MetaSpaType spa_type;
-   struct spa_video_info_raw video_format;
-+  int video_stride;
-
-   uint64_t last_frame_timestamp_us;
-
-@@ -112,8 +104,6 @@ G_DEFINE_TYPE_WITH_CODE (MetaScreenCastStreamSrc,
-                                                 meta_screen_cast_stream_src_init_initable_iface)
-                          G_ADD_PRIVATE (MetaScreenCastStreamSrc))
-
--#define PROP_RANGE(min, max) 2, (min), (max)
--
- static void
- meta_screen_cast_stream_src_get_specs (MetaScreenCastStreamSrc *src,
-                                        int                     *width,
-@@ -286,9 +276,6 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-                                                               int                      x,
-                                                               int                      y)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-
-   spa_meta_cursor->id = 1;
-@@ -300,7 +287,7 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   spa_meta_cursor->hotspot.x = 0;
-@@ -317,9 +304,6 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-                                                         int                      y,
-                                                         float                    scale)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   CoglTexture *cursor_texture;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-   int hotspot_x, hotspot_y;
-@@ -346,7 +330,7 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   meta_cursor_sprite_get_hotspot (cursor_sprite, &hotspot_x, &hotspot_y);
-@@ -382,12 +366,10 @@ static void
- add_cursor_metadata (MetaScreenCastStreamSrc *src,
-                      struct spa_buffer       *spa_buffer)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_cursor *spa_meta_cursor;
-
--  spa_meta_cursor = spa_buffer_find_meta (spa_buffer, spa_type->meta_cursor);
-+  spa_meta_cursor = spa_buffer_find_meta_data (spa_buffer, SPA_META_Cursor,
-+                                               sizeof (*spa_meta_cursor));
-   if (spa_meta_cursor)
-     meta_screen_cast_stream_src_set_cursor_metadata (src, spa_meta_cursor);
- }
-@@ -447,14 +429,14 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-     {
-       data = spa_buffer->datas[0].data;
-     }
--  else if (spa_buffer->datas[0].type == priv->pipewire_type->data.MemFd)
-+  else if (spa_buffer->datas[0].type == SPA_DATA_MemFd)
-     {
-       map = mmap (NULL, spa_buffer->datas[0].maxsize + spa_buffer->datas[0].mapoffset,
-                   PROT_READ | PROT_WRITE, MAP_SHARED,
-                   spa_buffer->datas[0].fd, 0);
-       if (map == MAP_FAILED)
-         {
--          g_warning ("Failed to mmap pipewire stream buffer: %s\n",
-+          g_warning ("Failed to mmap pipewire stream buffer: %s",
-                      strerror (errno));
-           return;
-         }
-@@ -469,28 +451,30 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-
-   if (meta_screen_cast_stream_src_record_frame (src, data))
-     {
--      struct spa_meta_video_crop *spa_meta_video_crop;
-+      struct spa_meta_region *spa_meta_video_crop;
-
-       spa_buffer->datas[0].chunk->size = spa_buffer->datas[0].maxsize;
-+      spa_buffer->datas[0].chunk->stride = priv->video_stride;
-
-       /* Update VideoCrop if needed */
-       spa_meta_video_crop =
--        spa_buffer_find_meta (spa_buffer, priv->pipewire_type->meta.VideoCrop);
-+        spa_buffer_find_meta_data (spa_buffer, SPA_META_VideoCrop,
-+                                   sizeof (*spa_meta_video_crop));
-       if (spa_meta_video_crop)
-         {
-           if (meta_screen_cast_stream_src_get_videocrop (src, &crop_rect))
-             {
--              spa_meta_video_crop->x = crop_rect.x;
--              spa_meta_video_crop->y = crop_rect.y;
--              spa_meta_video_crop->width = crop_rect.width;
--              spa_meta_video_crop->height = crop_rect.height;
-+              spa_meta_video_crop->region.position.x = crop_rect.x;
-+              spa_meta_video_crop->region.position.y = crop_rect.y;
-+              spa_meta_video_crop->region.size.width = crop_rect.width;
-+              spa_meta_video_crop->region.size.height = crop_rect.height;
-             }
-           else
-             {
--              spa_meta_video_crop->x = 0;
--              spa_meta_video_crop->y = 0;
--              spa_meta_video_crop->width = priv->stream_width;
--              spa_meta_video_crop->height = priv->stream_height;
-+              spa_meta_video_crop->region.position.x = 0;
-+              spa_meta_video_crop->region.position.y = 0;
-+              spa_meta_video_crop->region.size.width = priv->stream_width;
-+              spa_meta_video_crop->region.size.height = priv->stream_height;
-             }
-         }
-     }
-@@ -555,7 +539,6 @@ on_stream_state_changed (void                 *data,
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  uint32_t node_id;
-
-   switch (state)
-     {
-@@ -563,14 +546,12 @@ on_stream_state_changed (void                 *data,
-       g_warning ("pipewire stream error: %s", error_message);
-       meta_screen_cast_stream_src_notify_closed (src);
-       break;
--    case PW_STREAM_STATE_CONFIGURE:
--      node_id = pw_stream_get_node_id (priv->pipewire_stream);
--      g_signal_emit (src, signals[READY], 0, (unsigned int) node_id);
--      break;
--    case PW_STREAM_STATE_UNCONNECTED:
--    case PW_STREAM_STATE_CONNECTING:
--    case PW_STREAM_STATE_READY:
-     case PW_STREAM_STATE_PAUSED:
-+      if (priv->node_id == SPA_ID_INVALID && priv->pipewire_stream)
-+        {
-+          priv->node_id = pw_stream_get_node_id (priv->pipewire_stream);
-+          g_signal_emit (src, signals[READY], 0, (unsigned int) priv->node_id);
-+        }
-       if (meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_disable (src);
-       break;
-@@ -578,68 +559,69 @@ on_stream_state_changed (void                 *data,
-       if (!meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_enable (src);
-       break;
-+    case PW_STREAM_STATE_UNCONNECTED:
-+    case PW_STREAM_STATE_CONNECTING:
-+      break;
-     }
- }
-
- static void
--on_stream_format_changed (void                 *data,
--                          const struct spa_pod *format)
-+on_stream_param_changed (void                 *data,
-+                         uint32_t              id,
-+                         const struct spa_pod *format)
- {
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   uint8_t params_buffer[1024];
-   int32_t width, height, stride, size;
-   struct spa_pod_builder pod_builder;
-   const struct spa_pod *params[3];
-   const int bpp = 4;
-
--  if (!format)
--    {
--      pw_stream_finish_format (priv->pipewire_stream, 0, NULL, 0);
--      return;
--    }
-+  if (!format || id != SPA_PARAM_Format)
-+    return;
-
-   spa_format_video_raw_parse (format,
--                              &priv->video_format,
--                              &priv->spa_type.format_video);
-+                              &priv->video_format);
-
-   width = priv->video_format.size.width;
-   height = priv->video_format.size.height;
-   stride = SPA_ROUND_UP_N (width * bpp, 4);
-   size = height * stride;
-
-+  priv->video_stride = stride;
-+
-   pod_builder = SPA_POD_BUILDER_INIT (params_buffer, sizeof (params_buffer));
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idBuffers, pipewire_type->param_buffers.Buffers,
--    ":", pipewire_type->param_buffers.size, "i", size,
--    ":", pipewire_type->param_buffers.stride, "i", stride,
--    ":", pipewire_type->param_buffers.buffers, "iru", 16, PROP_RANGE (2, 16),
--    ":", pipewire_type->param_buffers.align, "i", 16);
--
--  params[1] = spa_pod_builder_object (
-+    SPA_TYPE_OBJECT_ParamBuffers, SPA_PARAM_Buffers,
-+    SPA_PARAM_BUFFERS_buffers, SPA_POD_CHOICE_RANGE_Int (16, 2, 16),
-+    SPA_PARAM_BUFFERS_blocks, SPA_POD_Int (1),
-+    SPA_PARAM_BUFFERS_size, SPA_POD_Int (size),
-+    SPA_PARAM_BUFFERS_stride, SPA_POD_Int (stride),
-+    SPA_PARAM_BUFFERS_align, SPA_POD_Int (16));
-+
-+  params[1] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", pipewire_type->meta.VideoCrop,
--    ":", pipewire_type->param_meta.size, "i", sizeof (struct spa_meta_video_crop));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_VideoCrop),
-+    SPA_PARAM_META_size, SPA_POD_Int (sizeof (struct spa_meta_region)));
-
--  params[2] = spa_pod_builder_object (
-+  params[2] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", priv->spa_type.meta_cursor,
--    ":", pipewire_type->param_meta.size, "i", CURSOR_META_SIZE (64, 64));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_Cursor),
-+    SPA_PARAM_META_size, SPA_POD_Int (CURSOR_META_SIZE (64, 64)));
-
--  pw_stream_finish_format (priv->pipewire_stream, 0,
--                           params, G_N_ELEMENTS (params));
-+  pw_stream_update_params (priv->pipewire_stream, params, G_N_ELEMENTS (params));
- }
-
- static const struct pw_stream_events stream_events = {
-   PW_VERSION_STREAM_EVENTS,
-   .state_changed = on_stream_state_changed,
--  .format_changed = on_stream_format_changed,
-+  .param_changed = on_stream_param_changed,
- };
-
- static struct pw_stream *
-@@ -652,8 +634,6 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   uint8_t buffer[1024];
-   struct spa_pod_builder pod_builder =
-     SPA_POD_BUILDER_INIT (buffer, sizeof (buffer));
--  MetaSpaType *spa_type = &priv->spa_type;
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   float frame_rate;
-   MetaFraction frame_rate_fraction;
-   struct spa_fraction max_framerate;
-@@ -661,7 +641,9 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   const struct spa_pod *params[1];
-   int result;
-
--  pipewire_stream = pw_stream_new (priv->pipewire_remote,
-+  priv->node_id = SPA_ID_INVALID;
-+
-+  pipewire_stream = pw_stream_new (priv->pipewire_core,
-                                    "meta-screen-cast-src",
-                                    NULL);
-   if (!pipewire_stream)
-@@ -682,17 +664,17 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   max_framerate = SPA_FRACTION (frame_rate_fraction.num,
-                                 frame_rate_fraction.denom);
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idEnumFormat, pipewire_type->spa_format,
--    "I", spa_type->media_type.video,
--    "I", spa_type->media_subtype.raw,
--    ":", spa_type->format_video.format, "I", spa_type->video_format.BGRx,
--    ":", spa_type->format_video.size, "R", &SPA_RECTANGLE (priv->stream_width,
--                                                           priv->stream_height),
--    ":", spa_type->format_video.framerate, "F", &SPA_FRACTION (0, 1),
--    ":", spa_type->format_video.max_framerate, "Fru", &max_framerate,
--                                                      PROP_RANGE (&min_framerate,
-+    SPA_TYPE_OBJECT_Format, SPA_PARAM_EnumFormat,
-+    SPA_FORMAT_mediaType, SPA_POD_Id (SPA_MEDIA_TYPE_video),
-+    SPA_FORMAT_mediaSubtype, SPA_POD_Id (SPA_MEDIA_SUBTYPE_raw),
-+    SPA_FORMAT_VIDEO_format, SPA_POD_Id (SPA_VIDEO_FORMAT_BGRx),
-+    SPA_FORMAT_VIDEO_size, SPA_POD_Rectangle (&SPA_RECTANGLE (priv->stream_width,
-+                                                              priv->stream_height)),
-+    SPA_FORMAT_VIDEO_framerate, SPA_POD_Fraction (&SPA_FRACTION (0, 1)),
-+    SPA_FORMAT_VIDEO_maxFramerate, SPA_POD_CHOICE_RANGE_Fraction (&max_framerate,
-+                                                                  &min_framerate,
-                                                                   &max_framerate));
-
-   pw_stream_add_listener (pipewire_stream,
-@@ -702,7 +684,7 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-
-   result = pw_stream_connect (pipewire_stream,
-                               PW_DIRECTION_OUTPUT,
--                              NULL,
-+                              SPA_ID_INVALID,
-                               (PW_STREAM_FLAG_DRIVER |
-                                PW_STREAM_FLAG_MAP_BUFFERS),
-                               params, G_N_ELEMENTS (params));
-@@ -717,40 +699,18 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
- }
-
- static void
--on_state_changed (void                 *data,
--                  enum pw_remote_state  old,
--                  enum pw_remote_state  state,
--                  const char           *error_message)
-+on_core_error (void       *data,
-+               uint32_t    id,
-+	       int         seq,
-+	       int         res,
-+	       const char *message)
- {
-   MetaScreenCastStreamSrc *src = data;
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_stream *pipewire_stream;
--  GError *error = NULL;
-
--  switch (state)
--    {
--    case PW_REMOTE_STATE_ERROR:
--      g_warning ("pipewire remote error: %s\n", error_message);
--      meta_screen_cast_stream_src_notify_closed (src);
--      break;
--    case PW_REMOTE_STATE_CONNECTED:
--      pipewire_stream = create_pipewire_stream (src, &error);
--      if (!pipewire_stream)
--        {
--          g_warning ("Could not create pipewire stream: %s", error->message);
--          g_error_free (error);
--          meta_screen_cast_stream_src_notify_closed (src);
--        }
--      else
--        {
--          priv->pipewire_stream = pipewire_stream;
--        }
--      break;
--    case PW_REMOTE_STATE_UNCONNECTED:
--    case PW_REMOTE_STATE_CONNECTING:
--      break;
--    }
-+  g_warning ("pipewire remote error: id:%u %s", id, message);
-+
-+  if (id == PW_ID_CORE && res == -EPIPE)
-+    meta_screen_cast_stream_src_notify_closed (src);
- }
-
- static gboolean
-@@ -793,17 +753,6 @@ static GSourceFuncs pipewire_source_funcs =
-   pipewire_loop_source_finalize
- };
-
--static void
--init_spa_type (MetaSpaType         *type,
--               struct spa_type_map *map)
--{
--  spa_type_media_type_map (map, &type->media_type);
--  spa_type_media_subtype_map (map, &type->media_subtype);
--  spa_type_format_video_map (map, &type->format_video);
--  spa_type_video_format_map (map, &type->video_format);
--  type->meta_cursor = spa_type_map_get_id(map, SPA_TYPE_META__Cursor);
--}
--
- static MetaPipeWireSource *
- create_pipewire_source (void)
- {
-@@ -829,9 +778,9 @@ create_pipewire_source (void)
-   return pipewire_source;
- }
-
--static const struct pw_remote_events remote_events = {
--  PW_VERSION_REMOTE_EVENTS,
--  .state_changed = on_state_changed,
-+static const struct pw_core_events core_events = {
-+  PW_VERSION_CORE_EVENTS,
-+  .error = on_core_error,
- };
-
- static gboolean
-@@ -851,37 +800,31 @@ meta_screen_cast_stream_src_initable_init (GInitable     *initable,
-       return FALSE;
-     }
-
--  priv->pipewire_core = pw_core_new (priv->pipewire_source->pipewire_loop,
--                                     NULL);
--  if (!priv->pipewire_core)
-+  priv->pipewire_context = pw_context_new (priv->pipewire_source->pipewire_loop,
-+                                           NULL, 0);
-+  if (!priv->pipewire_context)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Failed to create pipewire core");
-+                   "Failed to create pipewire context");
-       return FALSE;
-     }
-
--  priv->pipewire_remote = pw_remote_new (priv->pipewire_core, NULL, 0);
--  if (!priv->pipewire_remote)
-+  priv->pipewire_core = pw_context_connect (priv->pipewire_context, NULL, 0);
-+  if (!priv->pipewire_core)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't creat pipewire remote");
-+                   "Couldn't connect pipewire context");
-       return FALSE;
-     }
-
--  pw_remote_add_listener (priv->pipewire_remote,
--                          &priv->pipewire_remote_listener,
--                          &remote_events,
--                          src);
-+  pw_core_add_listener (priv->pipewire_core,
-+                        &priv->pipewire_core_listener,
-+                        &core_events,
-+                        src);
-
--  priv->pipewire_type = pw_core_get_type (priv->pipewire_core);
--  init_spa_type (&priv->spa_type, priv->pipewire_type->map);
--
--  if (pw_remote_connect (priv->pipewire_remote) != 0)
--    {
--      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't connect pipewire remote");
--      return FALSE;
--    }
-+  priv->pipewire_stream = create_pipewire_stream (src, error);
-+  if (!priv->pipewire_stream)
-+    return FALSE;
-
-   return TRUE;
- }
-@@ -912,8 +855,8 @@ meta_screen_cast_stream_src_finalize (GObject *object)
-     meta_screen_cast_stream_src_disable (src);
-
-   g_clear_pointer (&priv->pipewire_stream, pw_stream_destroy);
--  g_clear_pointer (&priv->pipewire_remote, pw_remote_destroy);
--  g_clear_pointer (&priv->pipewire_core, pw_core_destroy);
-+  g_clear_pointer (&priv->pipewire_core, pw_core_disconnect);
-+  g_clear_pointer (&priv->pipewire_context, pw_context_destroy);
-   g_source_destroy (&priv->pipewire_source->base);
-
-   G_OBJECT_CLASS (meta_screen_cast_stream_src_parent_class)->finalize (object);
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 806a3bef9f0..132cd9dd645 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,35 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=3
+version=3.36.3
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+ -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland
+ -Dxwayland_initfd=disabled"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From a3681ee4d22272e29eede1f881b03dec10b591fe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:38 +0600
Subject: [PATCH 38/66] gnome-shell: update to 3.36.3.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..ee4c6288f5f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb

From f2c338c51cbff9c6e651189e7339e2592ea36ddc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:46 +0600
Subject: [PATCH 39/66] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From ea1e912ac845664504c37a7b3c64355951a67af8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:53 +0600
Subject: [PATCH 40/66] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..16bc43fd0e7 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -13,15 +13,15 @@ configure_args="$(vopt_enable gir introspection)
 hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
-depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+depends="gnome-settings-daemon gnome-shell gnome-session gnome-themes-extra
+ gsettings-desktop-schemas xorg-server xorg-server-xwayland xrdb"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 879ca111d407fe0f9392cac3743054eb711bba1e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:00 +0600
Subject: [PATCH 41/66] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 72b6b9150221e6336349eb9b8a5aba533f234bfe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:07 +0600
Subject: [PATCH 42/66] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 58288f1a1c8643b53f55cc8e54676a0761b57c8b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:14 +0600
Subject: [PATCH 43/66] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 11150e85890220ee9de45be432fc30a19cb1774b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:21 +0600
Subject: [PATCH 44/66] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 7315d0d48f904b52a51e64e8f606c9588de46403 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:28 +0600
Subject: [PATCH 45/66] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 821abd4dee1e8f4ed667110142406e0eeb34acd2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:36 +0600
Subject: [PATCH 46/66] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From c362fd41d528c9398507231d23b6ef4b6ca010e2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:46 +0600
Subject: [PATCH 47/66] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 8f116a4be17ca3d43ab3e0f3d9a09fb94ac0dec3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:54 +0600
Subject: [PATCH 48/66] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From c8921aa4702f5ebbae853098cca9e764800d5860 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:01 +0600
Subject: [PATCH 49/66] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 2556edd631ed52381730c58993c2d7de9df1b0c6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:09 +0600
Subject: [PATCH 50/66] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 90358efa5eacae6fd01237778cb0b6dc8891122b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 16 Jun 2020 22:56:53 +0700
Subject: [PATCH 51/66] gnome-desktop: add do_check

---
 srcpkgs/gnome-desktop/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index c1a7408c207..ccd7c56569a 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -11,6 +11,7 @@ makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
  libxkbfile-devel libXrandr-devel gdk-pixbuf-devel"
 depends="bubblewrap gsettings-desktop-schemas iso-codes xkeyboard-config"
+checkdepends="$depends xorg-server-xvfb"
 short_desc="GNOME desktop management utilities"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
@@ -21,6 +22,22 @@ checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 build_options="gir"
 build_options_default="gir"
 
+do_check() {
+	# there is still 1 test fail for he_IL locale in musl
+	if test "$XBPS_TARGET_LIBC" != musl; then
+		local _pid
+		Xvfb :1 -screen 0 1366x768x24 &
+		_pid=$!
+		trap "kill $_pid" EXIT
+		trap 'exit 1' INT HUP TERM
+		export DISPLAY=:1
+		ninja -C build test
+		trap - EXIT INT HUP TERM
+		kill $_pid
+	fi
+}
+
+
 gnome-desktop-devel_package() {
 	depends="gtk+3-devel gsettings-desktop-schemas-devel>=3.12
 	 gdk-pixbuf-devel iso-codes libX11-devel libglib-devel libseccomp-devel

From 73fef8bd434078ab175b695cc67ae2dc32dd70ba Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 06:25:55 +0700
Subject: [PATCH 52/66] gnome-settings-daemon: fix checkdepends

---
 srcpkgs/gnome-settings-daemon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index 9ceb1d13de9..f4539a72d43 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -12,7 +12,7 @@ makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-dev
  xf86-input-wacom-devel"
 depends="hicolor-icon-theme pulseaudio"
 checkdepends="elogind libnotify python3-dbusmock python3-gobject
- python3-pycodestyle"
+ python3-pycodestyle which hwids eudev"
 short_desc="GNOME settings daemon"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"

From 273a8b47fb568de3b90723ff840329d8c95b07fa Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 07:44:12 +0700
Subject: [PATCH 53/66] mutter: skip do_check

---
 srcpkgs/mutter/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 132cd9dd645..117b59a29a9 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -22,6 +22,10 @@ checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
 shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
  libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
+do_check() {
+	msg_warn "xvfb does not work\n"
+}
+
 mutter-devel_package() {
 	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
 	 libX11-devel libXtst-devel mutter-${version}_${revision}"

From 7089901163884a9755b20ca0923049e81f6ec0dc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 21 Jun 2020 22:53:03 +0700
Subject: [PATCH 54/66] evolution-data-server: split vala build option from gir

---
 srcpkgs/evolution-data-server/template | 48 ++++++++++++--------------
 1 file changed, 23 insertions(+), 25 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index ebf8145f88c..d44a7ccc143 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -2,45 +2,41 @@
 pkgname=evolution-data-server
 version=3.36.3
 revision=1
+_basever=${version%.*}
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
- $(vopt_if gir '-DENABLE_INTROSPECTION=ON -DENABLE_VALA_BINDINGS=ON' '-DENABLE_WEATHER=OFF')"
+ $(vopt_if gir -DENABLE_INTROSPECTION=ON)
+ $(vopt_if vala -DENABLE_VALA_BINDINGS=ON)"
 hostmakedepends="flex glib-devel gperf intltool pkg-config libglib-devel
- $(vopt_if gir 'gobject-introspection')"
-makedepends="boost-devel libcanberra-devel libgdata-devel $(vopt_if gir libgweather-devel)
- libical-devel libsecret-devel mit-krb5-devel $(vopt_if gir 'vala-devel') webkit2gtk-devel"
-depends="$(vopt_if gir libgweather) libsoup-gnome"
+ $(vopt_if vala vala)"
+makedepends="boost-devel libcanberra-devel libgdata-devel libical-devel
+ libsecret-devel mit-krb5-devel webkit2gtk-devel libgweather-devel
+ $(vopt_if vala vala-devel)"
+depends="libgweather libsoup-gnome dbus tzdata"
+checkdepends="$depends"
 short_desc="Centralized access to appointments and contacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
-changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
-distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+changelog="https://raw.githubusercontent.com/GNOME/$pkgname/gnome-${_basever/./-}/NEWS"
+distfiles="${GNOME_SITE}/${pkgname}/${_basever}/${pkgname}-${version}.tar.xz"
 checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
-build_options="gir"
+build_options="gir vala"
 if [ -z "$CROSS_BUILD" ]; then
-	build_options_default="gir"
+	build_options_default="gir vala"
 fi
 
-# cmake perfomrms 2 checks using binary runtime, about iconv and sfrtime.
-# musl (1.1.16) does not support "ISO-2022-JP" encoding (see its roadmap),
-# although evolution-data-server is fine with musl.
-# If crossbuild, cmake let disabling runtime checks via specific directives.
-# test iconv-detect.c also generates iconv-detect.h that is required for build.
-# So completly disable test from iconv-detect.c (cmake.patch file) and
-# use a cmake cache file on crossbuild to disable sfrtime running test.
-if [ "$CROSS_BUILD" ]; then
-	configure_args+=" -C disableRuntimeTests.cmake"
-fi
 
-pre_configure() {
-	mkdir -p build
-	cp ${FILESDIR}/iconv-detect.h ${wrksrc}/build/.
-	if [ "$CROSS_BUILD" ]; then
-		cp ${FILESDIR}/disableRuntimeTests.cmake ${wrksrc}/build/.
-	fi
+do_check() {
+	cd build
+	# TODO This test is problematic, first run usually fail
+	# Signify something wrong with evolution-data-server on first run
+	ctest -R test-book-client-custom-summary || true
+	# make test run ctest --force-new-ctest-process which is problematic
+	# noone should run multiple instance of evolution-data-server irl.
+	ctest
 }
 
 post_install() {
@@ -59,6 +55,8 @@ evolution-data-server-devel_package() {
 		vmove "usr/lib/*.so"
 		if [ "$build_option_gir" ]; then
 			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
 			vmove usr/share/vala
 		fi
 	}

From 1700adcd2676e9522b85d55d117503b1ac347e00 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:51:31 +0700
Subject: [PATCH 55/66] folks: add build option gir and vala

Disable gir and vala in evolution-data-server will make folks failed to
be built.

Either enable both of them, or disable both of them.
---
 srcpkgs/folks/template | 20 +++++++++++++++-----
 1 file changed, 15 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index e21ca9c1077..e41d63e4f5e 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -5,10 +5,11 @@ revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Db_lto=false"
-hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
- gobject-introspection evolution-data-server-devel"
+hostmakedepends="pkg-config intltool glib-devel python3 python3-dbusmock
+ evolution-data-server-devel $(vopt_if vala vala)"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
- libgee08-devel evolution-data-server-devel tracker-devel"
+ libgee08-devel evolution-data-server-devel tracker-devel
+ $(vopt_if vala vala-devel)"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
@@ -17,6 +18,11 @@ homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
+build_options="gir vala"
+if [ -z "$CROSS_BUILD" ]; then
+	build_options_default="gir vala"
+fi
+
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
@@ -24,7 +30,11 @@ folks-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove "usr/lib/*.so"
-		vmove usr/share/vala
-		vmove usr/share/gir-1.0
+		if [ "$build_option_gir" ]; then
+			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
+			vmove usr/share/vala
+		fi
 	}
 }

From 86018e3b2663f533000b02e7d35eac8e367d7278 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:52:50 +0700
Subject: [PATCH 56/66] nautilus: correct checkdepends

---
 srcpkgs/nautilus/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 94cb10492ca..c6faf7bf3d7 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -11,7 +11,7 @@ makedepends="exempi-devel gnome-autoar-devel gnome-desktop-devel gtk+3-devel
  libX11-devel libxml2-devel tracker-devel gst-plugins-base1-devel"
 depends="desktop-file-utils gsettings-desktop-schemas hicolor-icon-theme
  tracker-miners tracker"
-checkdepends="tracker"
+checkdepends="tracker tracker-miners"
 short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"

From 57d1ae0957ddbd82f1cb8549e3d01f394a0c2d03 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:53:14 +0700
Subject: [PATCH 57/66] tracker: add tar to checkdepends

---
 srcpkgs/tracker/template | 1 +
 1 file changed, 1 insertion(+)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index e814f77c711..19338db45e1 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -11,6 +11,7 @@ hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
+checkdepends="tar"
 short_desc="Personal search tool and storage system"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"

From 2b3aca95f3000ecbb72b318dec624efa3e36ea34 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 24 Jun 2020 23:18:40 +0700
Subject: [PATCH 58/66] gnome-shell: add do_check

---
 srcpkgs/gnome-shell/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index ee4c6288f5f..deb922a09ad 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -15,6 +15,7 @@ makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  network-manager-applet-devel polkit-devel pulseaudio-devel
  startup-notification-devel telepathy-logger-devel gnome-autoar-devel"
 depends="caribou elogind glxinfo gnome-control-center gsettings-desktop-schemas upower"
+checkdepends="$depends accountsservice gdm xorg-server-xvfb pipewire mesa-dri dbus-x11"
 short_desc="GNOME core user interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
@@ -22,3 +23,19 @@ homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb
+
+do_check() {
+	local _pid
+	export DISPLAY=:1
+	export XDG_RUNTIME_DIR=/tmp
+	Xvfb :1 -screen 0 1366x768x24 &
+	_pid=$!
+	trap "kill $_pid" EXIT
+	trap 'exit 1' INT HUP TERM
+	eval $(dbus-launch)
+	export DBUS_SESSION_BUS_ADDRESS
+	ninja test -C build
+	# trap is hanging on normal exit, dbus?
+	trap - EXIT INT HUP TERM
+	kill $_pid || true
+}

From ec00257d42a574bc1341f9d6ea635ad8de034abc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 11:12:34 +0700
Subject: [PATCH 59/66] fixup! evolution-data-server: split vala build option
 from gir

---
 srcpkgs/evolution-data-server/template | 1 -
 1 file changed, 1 deletion(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index d44a7ccc143..3639e1b1120 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -28,7 +28,6 @@ if [ -z "$CROSS_BUILD" ]; then
 	build_options_default="gir vala"
 fi
 
-
 do_check() {
 	cd build
 	# TODO This test is problematic, first run usually fail

From f46c946426d5c3162f2a99bd6db89d2b6238a6b4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 11:13:53 +0700
Subject: [PATCH 60/66] fixup! gnome-podcasts: update to 0.4.7.

---
 srcpkgs/gnome-podcasts/template | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 3c239df8424..7a5b0d0a168 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -19,10 +19,11 @@ export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-if [ "$CROSS_BUILD" ]; then
-	post_patch() {
+post_patch() {
+	if [ "$CROSS_BUILD" ]; then
 		vsed -i scripts/cargo.sh \
 			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
 			-e '/CARGO_HOME/d'
-	}
-fi
+	fi
+	cargo update --package openssl-sys --precise 0.9.58
+}

From 5ec5c80284d3bd5ee20f2fab05eef8417f254fa1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 11:14:51 +0700
Subject: [PATCH 61/66] fixup! evolution: update to 3.36.3.

---
 .../evolution/files/disableRuntimeTests.cmake | 45 -------------------
 srcpkgs/evolution/files/iconv-detect.h        |  5 ---
 srcpkgs/evolution/template                    | 31 ++-----------
 3 files changed, 4 insertions(+), 77 deletions(-)
 delete mode 100644 srcpkgs/evolution/files/disableRuntimeTests.cmake
 delete mode 100644 srcpkgs/evolution/files/iconv-detect.h

diff --git a/srcpkgs/evolution/files/disableRuntimeTests.cmake b/srcpkgs/evolution/files/disableRuntimeTests.cmake
deleted file mode 100644
index 8be55b42070..00000000000
--- a/srcpkgs/evolution/files/disableRuntimeTests.cmake
+++ /dev/null
@@ -1,45 +0,0 @@
-# This file was generated by CMake because it detected TRY_RUN() commands
-# in crosscompiling mode. It will be overwritten by the next CMake run.
-# Copy it to a safe location, set the variables to appropriate values
-# and use it then to preset the CMake cache (using -C).
-
-
-# _correct_iconv_EXITCODE
-#    indicates whether the executable would have been able to run on its
-#    target platform. If so, set _correct_iconv_EXITCODE to
-#    the exit code (in many cases 0 for success), otherwise enter "FAILED_TO_RUN".
-# The _correct_iconv_COMPILED variable holds the build result for this TRY_RUN().
-# 
-# Source file   : /builddir/evolution-data-server-3.26.0/build/CMakeFiles/CMakeTmp/src.c
-# Executable    : /builddir/evolution-data-server-3.26.0/build/CMakeFiles/cmTC_315ee-_correct_iconv_EXITCODE
-# Run arguments : 
-#    Called from: [2]	/usr/share/cmake-3.9/Modules/CheckCSourceRuns.cmake
-#                 [1]	/builddir/evolution-data-server-3.26.0/CMakeLists.txt
-
-set( _correct_iconv_EXITCODE 
-     0
-     CACHE INTERNAL "Result from TRY_RUN" FORCE)
-set(_correct_iconv_EXITCODE__TRYRUN_OUTPUT
-     0
-     CACHE INTERNAL "Result from TRY_RUN" FORCE)
-
-
-# HAVE_LKSTRFTIME_EXITCODE
-#    indicates whether the executable would have been able to run on its
-#    target platform. If so, set HAVE_LKSTRFTIME_EXITCODE to
-#    the exit code (in many cases 0 for success), otherwise enter "FAILED_TO_RUN".
-# The HAVE_LKSTRFTIME_COMPILED variable holds the build result for this TRY_RUN().
-# 
-# Source file   : /builddir/evolution-data-server-3.26.0/build/CMakeFiles/CMakeTmp/src.c
-# Executable    : /builddir/evolution-data-server-3.26.0/build/CMakeFiles/cmTC_d2897-HAVE_LKSTRFTIME_EXITCODE
-# Run arguments : 
-#    Called from: [2]	/usr/share/cmake-3.9/Modules/CheckCSourceRuns.cmake
-#                 [1]	/builddir/evolution-data-server-3.26.0/CMakeLists.txt
-
-set( HAVE_LKSTRFTIME_EXITCODE 
-     0
-     CACHE INTERNAL "Result from TRY_RUN" FORCE)
-set( HAVE_LKSTRFTIME_EXITCODE__TRYRUN_OUTPUT
-     0
-     CACHE INTERNAL "Result from TRY_RUN" FORCE)
-
diff --git a/srcpkgs/evolution/files/iconv-detect.h b/srcpkgs/evolution/files/iconv-detect.h
deleted file mode 100644
index 46f476d5bc9..00000000000
--- a/srcpkgs/evolution/files/iconv-detect.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/* This is an auto-generated header, DO NOT EDIT! */
-
-#define ICONV_ISO_D_FORMAT "iso-%d-%d"
-#define ICONV_ISO_S_FORMAT "iso-%d-%s"
-#define ICONV_10646 "iso-10646"
diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index d95c07eb72c..9f33078cf1e 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -5,12 +5,12 @@ revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
  -DENABLE_TEXT_HIGHLIGHT=OFF -DENABLE_PST_IMPORT=OFF
- -DENABLE_WEATHER=$(vopt_if gir ON OFF)"
+ -DENABLE_WEATHER=ON"
 hostmakedepends="gnome-doc-utils gobject-introspection intltool itstool
- pkg-config"
+ pkg-config glib-devel"
 makedepends="NetworkManager-devel clutter-gtk-devel enchant2-devel
  evolution-data-server-devel gspell-devel gtkhtml-devel libcanberra-devel
- $(vopt_if gir libgweather-devel) libnotify-devel webkit2gtk-devel ytnef-devel
+ libgweather-devel libnotify-devel webkit2gtk-devel ytnef-devel
  gnome-desktop-devel"
 depends="gnome-keyring"
 short_desc="Integrated mail, addressbook and calendaring for GNOME"
@@ -24,30 +24,7 @@ shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 
 build_options="gir"
-if [ -z "$CROSS_BUILD" ]; then
-	build_options_default="gir"
-else
-	hostmakedepends+=" glib-devel"
-fi
-
-# cmake perfomrms 2 checks using binary runtime, about iconv and sfrtime.
-# musl (1.1.16) does not support "ISO-2022-JP" encoding (see its roadmap),
-# although evolution-data-server is fine with musl.
-# If crossbuild, cmake let disabling runtime checks via specific directives.
-# test iconv-detect.c also generates iconv-detect.h that is required for build.
-# So completly disable test from iconv-detect.c (cmake.patch file) and
-# use a cmake cache file on crossbuild to disable sfrtime running test.
-if [ "$CROSS_BUILD" ]; then
-	configure_args+=" -C disableRuntimeTests.cmake"
-fi
-
-pre_configure() {
-	mkdir -p build
-	cp ${FILESDIR}/iconv-detect.h ${wrksrc}/build/.
-	if [ "$CROSS_BUILD" ]; then
-		cp ${FILESDIR}/disableRuntimeTests.cmake ${wrksrc}/build/.
-	fi
-}
+build_options_default="gir"
 
 evolution-devel_package() {
 	depends="webkit2gtk-devel gtk+3-devel libglib-devel evolution-data-server-devel

From 82c239fd27862d7ab13efb654cf728a50fcd3298 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 13:35:57 +0700
Subject: [PATCH 62/66] fixup! fixup! evolution-data-server: split vala build
 option from gir

---
 .../patches/no-clear-ldflags.patch                    | 11 +++++++++++
 srcpkgs/evolution-data-server/template                |  8 +++++---
 2 files changed, 16 insertions(+), 3 deletions(-)
 create mode 100644 srcpkgs/evolution-data-server/patches/no-clear-ldflags.patch

diff --git a/srcpkgs/evolution-data-server/patches/no-clear-ldflags.patch b/srcpkgs/evolution-data-server/patches/no-clear-ldflags.patch
new file mode 100644
index 00000000000..b562ef36f36
--- /dev/null
+++ b/srcpkgs/evolution-data-server/patches/no-clear-ldflags.patch
@@ -0,0 +1,11 @@
+--- cmake/modules/GObjectIntrospection.cmake.orig	2020-07-06 22:29:51.799291082 +0700
++++ cmake/modules/GObjectIntrospection.cmake	2020-07-06 22:29:58.798371117 +0700
+@@ -122,7 +122,7 @@
+ 		file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/${_gir_name}_files "${_gir_files}")
+ 
+ 		add_custom_command(
+-			COMMAND ${CMAKE_COMMAND} -E env "CC='${CMAKE_C_COMPILER}'" LDFLAGS=
++			COMMAND ${CMAKE_COMMAND} -E env "CC='${CMAKE_C_COMPILER}'"
+ 				${INTROSPECTION_SCANNER_ENV}
+ 				${G_IR_SCANNER}
+ 				${INTROSPECTION_SCANNER_ARGS}
diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 3639e1b1120..080176155a9 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -30,12 +30,14 @@ fi
 
 do_check() {
 	cd build
-	# TODO This test is problematic, first run usually fail
+	# TODO This test is problematic, fail intermittent, especially on
+	# first clean run.
 	# Signify something wrong with evolution-data-server on first run
-	ctest -R test-book-client-custom-summary || true
 	# make test run ctest --force-new-ctest-process which is problematic
+	# make test run ctest --force-new-ctest-process which is problematic
+	# noone should run multiple instance of evolution-data-server irl.
 	# noone should run multiple instance of evolution-data-server irl.
-	ctest
+	ctest -E test-book-client-custom-summary
 }
 
 post_install() {

From a3f732aa4ebfb940a999b85151232b1a471cb98f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 13:36:48 +0700
Subject: [PATCH 63/66] fixup! at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index aa7b8839c9f..591cc4aafa4 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -12,6 +12,10 @@ homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
+do_check() {
+	: wants dbus
+}
+
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"

From 79af42cb55e88eee69bd3fb9e4d5a52c37297eae Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 13:37:24 +0700
Subject: [PATCH 64/66] fixup! at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index fb799af7e52..beee578d015 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -17,6 +17,10 @@ checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 build_options="gir"
 build_options_default="gir"
 
+do_check() {
+	: "wants DBus?"
+}
+
 post_install() {
 	rm -rf ${DESTDIR}/usr/lib/systemd
 }

From a1816a8656ea9939f1fbd3aa2831675b8adf5158 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 15:51:56 +0700
Subject: [PATCH 65/66] fixup! totem: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/totem/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index e4186632153..e7db9702c38 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -32,6 +32,10 @@ disable_parallel_build=yes
 build_options="gir vala"
 build_options_default="gir vala"
 
+do_check() {
+	: skip
+}
+
 libtotem_package() {
 	short_desc+=" - runtime library"
 	pkg_install() {

From e53a485127abbf97f7cfbcd99f523e789563115e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 16:46:21 +0700
Subject: [PATCH 66/66] fixup! fixup! fixup! evolution-data-server: split vala
 build option from gir

---
 srcpkgs/evolution-data-server/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 080176155a9..b44a6af9e47 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -4,7 +4,7 @@ version=3.36.3
 revision=1
 _basever=${version%.*}
 build_style=cmake
-build_helper=gir
+build_helper="gir qemu"
 configure_args="-DENABLE_UOA=OFF
  $(vopt_if gir -DENABLE_INTROSPECTION=ON)
  $(vopt_if vala -DENABLE_VALA_BINDINGS=ON)"

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Updated] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (79 preceding siblings ...)
  2020-07-12  9:46 ` sgn
@ 2020-07-12 13:18 ` sgn
  2020-07-19  9:17 ` [PR REVIEW] " not-chicken
                   ` (6 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: sgn @ 2020-07-12 13:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1833 bytes --]

There is an updated pull request by sgn against master on the void-packages repository

https://github.com/mnabid/void-packages gedit
https://github.com/void-linux/void-packages/pull/21382

gnome 3.36 updates
<details>
<summary><i>List of updates : </i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.3
 * evolution -> 3.36.3
 * evolution-data-server -> 3.36.3
 * evolution-ews -> 3.36.3
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.3
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.3
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.3
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.3
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.3
 * nautilus -> 3.36.3
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * python3-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built natively in `x86_64` and crossbuilt for `armv7l`.

A patch file from https://github.com/void-linux/void-packages/pull/21382.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-gedit-21382.patch --]
[-- Type: text/x-diff, Size: 768682 bytes --]

From 5b06b6bcabd13139a9312189a9e4eb3619dca13f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:42:53 +0600
Subject: [PATCH 01/68] gnome-desktop: update to 3.36.2.

Closes: #21382
---
 common/shlibs                  | 2 +-
 srcpkgs/gnome-desktop/template | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 00a0af53fcb..a34afe4079c 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1182,7 +1182,7 @@ libgstbasecamerabinsrc-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstcodecparsers-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstplayer-1.0.so.0 gst-plugins-bad1-1.0.0_1
 libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1
-libgnome-desktop-3.so.18 gnome-desktop-3.34.0_1
+libgnome-desktop-3.so.19 gnome-desktop-3.36.2_1
 libsecret-1.so.0 libsecret-0.10_1
 libgweather-3.so.16 libgweather-3.34.0_1
 libgnomekbd.so.8 libgnomekbd-3.6.0_1
diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index 992cb1ff16a..c1a7408c207 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -1,11 +1,11 @@
 # Template file for 'gnome-desktop'
 pkgname=gnome-desktop
-version=3.34.1
+version=3.36.2
 revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dgnome-distributor=VoidLinux -Dudev=enabled
- -Dintrospection=$(vopt_if gir true false)"
+configure_args="-Dgnome_distributor=VoidLinux -Dudev=enabled
+ -Dsystemd=disabled -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="gettext itstool pkg-config glib-devel"
 makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
@@ -16,7 +16,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-desktop"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1dbeb5666dad27166c769e48e2ab41dd5ed74718ea35eb57c8488790662dc5a
+checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 
 build_options="gir"
 build_options_default="gir"

From 5ab0584e48f995c803280de3281db11ef9257a0c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:18 +0600
Subject: [PATCH 02/68] gnome-session: update to 3.36.0.

---
 srcpkgs/gnome-session/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template
index 4444f162bf1..88dee20eb6e 100644
--- a/srcpkgs/gnome-session/template
+++ b/srcpkgs/gnome-session/template
@@ -1,9 +1,9 @@
 # Template file for 'gnome-session'
 pkgname=gnome-session
-version=3.34.1
+version=3.36.0
 revision=1
 build_style=meson
-configure_args="-Dsystemd_journal=false"
+configure_args="-Dsystemd_session=disable -Dsystemd_journal=false"
 hostmakedepends="glib-devel intltool pkg-config xmlto"
 makedepends="elogind-devel gnome-desktop-devel gtk+3-devel json-glib-devel
  libglib-devel libICE-devel libSM-devel libXtst-devel startup-notification-devel
@@ -15,4 +15,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-session"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d7801fe2d5a751b19cb58081771316a76aabd5c550cd58d4e4c6a5a4ed356660
+checksum=d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/lib/systemd
+}

From 3eeb42680a941b5193aa94c1a582c6be618d36a1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:25 +0600
Subject: [PATCH 03/68] nautilus: update to 3.36.3.

---
 srcpkgs/nautilus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 537a851973f..94cb10492ca 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -1,6 +1,6 @@
 # Template file for 'nautilus'
 pkgname=nautilus
-version=3.36.1.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -16,8 +16,8 @@ short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Nautilus"
-distfiles="${GNOME_SITE}/${pkgname}/${version::4}/${pkgname}-${version}.tar.xz"
-checksum=f9252f508211d9f368a49db697890f895d080f09590aecaf33803a519def7bde
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=b6cafc7ab1e70a64383de391b6097fcccbf36b208f8502d8c46423224fd30ef8
 
 build_options="gir"
 build_options_default="gir"

From 2aa54ef7059ad64fac9467dab327f49819ff61ae Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:32 +0600
Subject: [PATCH 04/68] gnome-music: update to 3.36.3.

---
 srcpkgs/gnome-music/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-music/template b/srcpkgs/gnome-music/template
index 12511736407..2273ac1ca16 100644
--- a/srcpkgs/gnome-music/template
+++ b/srcpkgs/gnome-music/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-music'
 pkgname=gnome-music
-version=3.36.1
+version=3.36.3
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,5 +15,5 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Music"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=7b80f630d158334935a8760296550cc91b50d604fa68b402fe5165b1531ec332
+checksum=54f8d240f8995f4cff4dce5e1cbdc60befc81d79bf72c1e4fd807ed05c114237
 lib32disabled=yes

From e6f28780516d17e4737864085e83dcf5e6338656 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:38 +0600
Subject: [PATCH 05/68] devhelp: update to 3.36.2.

---
 srcpkgs/devhelp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/devhelp/template b/srcpkgs/devhelp/template
index a1c2dcbb762..ba75dffdce7 100644
--- a/srcpkgs/devhelp/template
+++ b/srcpkgs/devhelp/template
@@ -1,6 +1,6 @@
 # Template file for 'devhelp'
 pkgname=devhelp
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -11,7 +11,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Devhelp"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4cf8ec9302bc4a79e01ac53bd9c8b95a596f71f35351f48b63263227f09a8a3d
+checksum=8b5a84319efbb2ef1bc4022ee3ed2d6678794eba2dfa993e50e03d6e7b930c5e
 
 devhelp-devel_package() {
 	short_desc+=" - development files"

From 3d8f7c7c70626afc0489323d0c5621e316365f67 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:43:51 +0600
Subject: [PATCH 06/68] eog: update to 3.36.2.

---
 srcpkgs/eog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/eog/template b/srcpkgs/eog/template
index e4cacb7079e..cfa1cf57594 100644
--- a/srcpkgs/eog/template
+++ b/srcpkgs/eog/template
@@ -1,6 +1,6 @@
 # Template file for 'eog'
 pkgname=eog
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/EyeOfGnome"
 distfiles="${GNOME_SITE}/eog/${version%.*}/eog-${version}.tar.xz"
-checksum=e454a1a7aa5e3a3321eab0116778110e5a7a7b63bcf21676eda1a7be187c9c95
+checksum=5c056b0295a8e06d093b8fc60b10e2a8c19abdb7beae1c7e7e0595ece2e1b78c
 shlib_provides="libeog.so"
 lib32disabled=yes
 

From 2125c9346112fefb7defa198d2c7390e417b15e9 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:07 +0600
Subject: [PATCH 07/68] gnome-maps: update to 3.36.2.

... and unmark nocross.
---
 common/shlibs               | 1 +
 srcpkgs/gnome-maps/template | 8 ++++----
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index a34afe4079c..048cce8c9bb 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -622,6 +622,7 @@ libcanberra-gtk3.so.0 libcanberra-gtk3-0.30_6
 libgtop-2.0.so.11 libgtop-2.38.0_1
 librarian.so.0 rarian-0.8.1_1
 libmusikcore.so musikcube-0.60.1_1
+libgnome-maps.so.0 gnome-maps-3.36.2_1
 libgnome-menu-3.so.0 gnome-menus-2.91.6_1
 libart_lgpl_2.so.2 libart-2.3.20_1
 libgnomecanvas-2.so.0 libgnomecanvas-2.30.1_1
diff --git a/srcpkgs/gnome-maps/template b/srcpkgs/gnome-maps/template
index 0300be60599..a67d84f4396 100644
--- a/srcpkgs/gnome-maps/template
+++ b/srcpkgs/gnome-maps/template
@@ -1,9 +1,10 @@
 # Template file for 'gnome-maps'
 pkgname=gnome-maps
-version=3.36.1
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="glib-devel gobject-introspection intltool pkg-config AppStream"
+build_helper="gir"
+hostmakedepends="glib-devel gjs-devel intltool pkg-config AppStream"
 makedepends="folks-devel geoclue2-devel geocode-glib-devel gjs-devel
  gnome-desktop-devel libchamplain-devel rest-devel"
 depends="geoclue2 gfbgraph gjs"
@@ -12,5 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Maps"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=1a32efd96ad898f77a636d2d0463d757009b4b812259c89ffdcb91d6afc052f9
-nocross="evolution-dataserver cross gir doesn't work"
+checksum=5ba219b9de98678cefa5848f6538db8dbd07f6c747fd43a99167a266878a9784

From 27a655dbf2972717051574de1d7c4b1aa516f47e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:14 +0600
Subject: [PATCH 08/68] gedit: update to 3.36.2.

---
 srcpkgs/gedit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gedit/template b/srcpkgs/gedit/template
index 4e273aaf182..e3ebea05ea7 100644
--- a/srcpkgs/gedit/template
+++ b/srcpkgs/gedit/template
@@ -1,6 +1,6 @@
 # Template file for 'gedit'
 pkgname=gedit
-version=3.36.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -17,7 +17,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Gedit"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=6dc38eda227d1c368e039e9bff485d0bee9a49d5f9560c387ee08f5818a4e387
+checksum=6887554643c5b1b3862ac364d97b7b50224bff95e6758aeaa08f4a482b554197
 shlib_provides="libgedit-3.36.so"
 python_version=3
 

From 85b558d1fbe66ae29d5362e34183161ba9fe042d Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:21 +0600
Subject: [PATCH 09/68] gnome-contacts: update to 3.36.1.

---
 srcpkgs/gnome-contacts/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-contacts/template b/srcpkgs/gnome-contacts/template
index 2a8213a7240..01fb82b7826 100644
--- a/srcpkgs/gnome-contacts/template
+++ b/srcpkgs/gnome-contacts/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-contacts'
 pkgname=gnome-contacts
-version=3.34.0
-revision=2
+version=3.36.1
+revision=1
 wrksrc="gnome-contacts-${version%.*}"
 build_style=meson
-hostmakedepends="docbook-xsl gettext glib-devel libxslt pkg-config vala"
+hostmakedepends="docbook-xsl folks-devel gettext glib-devel libxslt pkg-config vala"
 makedepends="cheese-devel folks-devel geocode-glib-devel gnome-desktop-devel
  libchamplain-devel libnotify-devel vala-devel libhandy-devel"
 depends="desktop-file-utils"
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Contacts"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version%.*}.tar.xz"
-checksum=99602ec8d660c1f3c92cae6356f64f72fb6db58e55bce27a599330bf7b622f12
+checksum=eecbd2209d93c8d31df92f6ccf79183b456c6e07a28ae0155cbda18aabd36f7b

From bdb94f0ad12720156d46e4a9fcbea09ba1c04bc3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:29 +0600
Subject: [PATCH 10/68] gnome-clocks: update to 3.36.2.

---
 srcpkgs/gnome-clocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-clocks/template b/srcpkgs/gnome-clocks/template
index 3e049b42fb1..34b159ae6a6 100644
--- a/srcpkgs/gnome-clocks/template
+++ b/srcpkgs/gnome-clocks/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-clocks'
 pkgname=gnome-clocks
-version=3.36.0
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=meson
@@ -15,4 +15,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Clocks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=4c978b0c7f7b9daebd272d0175f8a54415e2078f134f48add5cf24362eef49c6
+checksum=f11b1b22ec1f285e509883684c0b1f4a51496aea105591239e5b26f8986751e6

From acdd3123322e995b0a4a338639e38ae7c4c02a5c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:36 +0600
Subject: [PATCH 11/68] gnome-epub-thumbnailer: update to 1.6.

---
 srcpkgs/gnome-epub-thumbnailer/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-epub-thumbnailer/template b/srcpkgs/gnome-epub-thumbnailer/template
index b16e705475f..d67b77f1e43 100644
--- a/srcpkgs/gnome-epub-thumbnailer/template
+++ b/srcpkgs/gnome-epub-thumbnailer/template
@@ -1,13 +1,13 @@
 # Template file for 'gnome-epub-thumbnailer'
 pkgname=gnome-epub-thumbnailer
-version=1.5
+version=1.6
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="gdk-pixbuf-devel libarchive-devel libxml2-devel"
 short_desc="Thumbnailer for EPub and MOBI books"
 maintainer="Alif Rachmawadi <arch@subosito.com>"
-license="GPL-3"
+license="GPL-2.0-or-later"
 homepage="https://git.gnome.org/browse/gnome-epub-thumbnailer"
 distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=308210f5800219f64cae4828e59bb8e6e4c53b888048cf487221aeb4337d791a
+checksum=b502420d9b02ea0b0fc7986ef5a091a12b2286be14fed9e47594fe9fa0c5898e

From a65314ebfe78c1e3da4289460ed3ec280f22165c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:44 +0600
Subject: [PATCH 12/68] gnome-terminal: update to 3.36.2.

---
 srcpkgs/gnome-terminal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-terminal/template b/srcpkgs/gnome-terminal/template
index bf3d5bcdd42..22dbc11bada 100644
--- a/srcpkgs/gnome-terminal/template
+++ b/srcpkgs/gnome-terminal/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-terminal'
 pkgname=gnome-terminal
-version=3.36.1.1
+version=3.36.2
 revision=1
 build_style=gnu-configure
 configure_args="--disable-static --with-nautilus-extension"
@@ -13,8 +13,8 @@ short_desc="GNOME terminal emulator application"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.3-only"
 homepage="https://wiki.gnome.org/Apps/Terminal"
-distfiles="${GNOME_SITE}/${pkgname}/${version:0:4}/${pkgname}-${version}.tar.xz"
-checksum=f3d708a1e76d77c1c85b126f6e003220a15d4a46a50fd8070e1a3aabe678a376
+distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+checksum=41d1b6a3dc97c066e294acdb7f36931e81668638dcc92ffa25bca3ddebacdf46
 lib32disabled=yes
 
 if [ "$CROSS_BUILD" ]; then

From 7aac73e711527ebea2eec425bf1d8e4c3b3e3647 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:44:52 +0600
Subject: [PATCH 13/68] gnome-podcasts: update to 0.4.7.

---
 .../gnome-podcasts/patches/fix-build.patch    | 21 ----------------
 srcpkgs/gnome-podcasts/template               | 24 ++++++++++---------
 2 files changed, 13 insertions(+), 32 deletions(-)
 delete mode 100644 srcpkgs/gnome-podcasts/patches/fix-build.patch

diff --git a/srcpkgs/gnome-podcasts/patches/fix-build.patch b/srcpkgs/gnome-podcasts/patches/fix-build.patch
deleted file mode 100644
index aeb9581bd79..00000000000
--- a/srcpkgs/gnome-podcasts/patches/fix-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- podcasts-gtk/src/widgets/episode.rs.orig	2019-06-09 15:54:59.793451047 +0200
-+++ podcasts-gtk/src/widgets/episode.rs	2019-06-09 15:55:19.191311512 +0200
-@@ -559,7 +559,7 @@
-             .total_size
-             .get_text()
-             .as_ref()
--            .map(|s| s.trim_right_matches(" MB"))
-+            .map(|s| s.trim_end_matches(" MB"))
-             .and_then(|s| s.parse::<i32>().ok())
-             .is_none()
-         {
---- podcasts-gtk/src/widgets/shows_view.rs.orig	2019-06-09 15:54:00.320878867 +0200
-+++ podcasts-gtk/src/widgets/shows_view.rs	2019-06-09 15:54:13.151786563 +0200
-@@ -80,7 +80,6 @@
- }
- 
- fn on_child_activate(child: &gtk::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
--    use gtk::WidgetExt;
- 
-     // This is such an ugly hack...
-     let id = WidgetExt::get_name(child)
diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 72e2db6b109..3c239df8424 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -1,26 +1,28 @@
 # Template file for 'gnome-podcasts'
 pkgname=gnome-podcasts
-version=0.4.6
-revision=3
+version=0.4.7
+revision=1
 wrksrc="podcasts-${version}"
 build_style=meson
-hostmakedepends="cargo gettext-devel glib-devel pkg-config"
+build_helper="rust"
+hostmakedepends="cargo gettext glib-devel pkg-config sqlite-devel"
 makedepends="gstreamer1-devel gst-plugins-bad1-devel gst-plugins-base1-devel
- gtk+3-devel libhandy-devel libressl-devel sqlite-devel texinfo"
+ gtk+3-devel libhandy-devel libressl-devel sqlite-devel rust-std"
 short_desc="Listen to your favorite podcasts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Podcasts"
 distfiles="https://gitlab.gnome.org/World/podcasts/-/archive/${version}/podcasts-${version}.tar.gz"
-checksum=953c63e8184ca1f748418d8a8262d40eaa41047f81e2d2c874a3035d9d9d0e4a
-nocross="rustc cant be crosscompiled as of now"
-broken="gettext-rs hash does not exists, if fixed build fails in gio 0.5.0"
+checksum=a9a1b62dd3567e3cca38ee29df2fadd82e2fb5e837b0a2a26ecac74e9305161c
 
 export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-pre_build() {
-	cargo update --package openssl-sys --precise 0.9.46
-	cargo update --package openssl --precise 0.10.22
-}
+if [ "$CROSS_BUILD" ]; then
+	post_patch() {
+		vsed -i scripts/cargo.sh \
+			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
+			-e '/CARGO_HOME/d'
+	}
+fi

From 97b19d883438b688488206dd37bcccc286212280 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:01 +0600
Subject: [PATCH 14/68] gnome-control-center: update to 3.36.3.

---
 srcpkgs/gnome-control-center/template | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-control-center/template b/srcpkgs/gnome-control-center/template
index 0e2787898ae..53a555525b4 100644
--- a/srcpkgs/gnome-control-center/template
+++ b/srcpkgs/gnome-control-center/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-control-center'
 pkgname=gnome-control-center
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper="gir"
@@ -10,24 +10,36 @@ hostmakedepends="glib-devel gsettings-desktop-schemas-devel intltool pkg-config
 makedepends="ModemManager-devel accountsservice-devel alsa-plugins
  colord-gtk-devel gnome-bluetooth-devel gnome-desktop-devel gnome-menus-devel
  gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel ibus-devel
- libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel
+ libSM-devel libXxf86misc-devel libgnomekbd-devel libgtop-devel libhandy-devel
  libpwquality-devel mit-krb5-devel network-manager-applet-devel polkit-devel
  pulseaudio-devel samba-devel tzdata upower-devel vala-devel clutter-gtk-devel
  libxml2-devel libX11-devel gtk+3-devel cups-devel libgudev-devel libwacom-devel
  clutter-devel libsecret-devel libcanberra-devel udisks2-devel gsound-devel
  $(vopt_if cheese cheese-devel)"
-depends="alsa-plugins-pulseaudio desktop-file-utils
+depends="alsa-plugins-pulseaudio desktop-file-utils upower colord cups-pk-helper
  gsettings-desktop-schemas hicolor-icon-theme iso-codes sound-theme-freedesktop
  cracklib"
+checkdepends="python3-dbusmock xorg-server-xvfb"
 short_desc="GNOME control center"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-control-center"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=5f82ecd5554136c462248ec5363b82d95358b39dfd6787006d8307b4504e515e
+checksum=bc174d970dbeca3ee19c26019de31e9edf78dc9c4abde16e763566ee38c3691c
 
 build_options="cheese"
 desc_option_cheese="Add support for adding user account images with your webcam"
+
+pre_check() {
+	# test-network-panel needs id generated by dbus-uuidgen
+	mkdir -p /var/lib/dbus
+	dbus-uuidgen --ensure
+}
+
+post_check() {
+	rm -rf /var/lib/dbus
+}
+
 if [ -z "$CROSS_BUILD" ]; then
 	build_options_default+=" cheese"
 fi

From 009a6bf7771c630d0977636761000b6d79098c75 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:08 +0600
Subject: [PATCH 15/68] gnome-settings-daemon: update to 3.36.1.

Added a patch to fix brightness controls with elogind.
---
 ...t-use-logind-for-brightness-changing.patch | 121 ++++++++++++++++++
 srcpkgs/gnome-settings-daemon/template        |  10 +-
 2 files changed, 126 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch

diff --git a/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
new file mode 100644
index 00000000000..a3a834e3b74
--- /dev/null
+++ b/srcpkgs/gnome-settings-daemon/patches/dont-use-logind-for-brightness-changing.patch
@@ -0,0 +1,121 @@
+Upstream introduced brightness level changing with
+https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cd051e6c7ccfb7e7b0ec440409c559b2e51284e8
+but apparently this doesn't work with elogind (see https://github.com/elogind/elogind/issues/158),
+so let's revert this for now and keep using the old mechanism.
+diff --git plugins/power/gsd-backlight.c plugins/power/gsd-backlight.c
+index 9f406c9..9c872f8 100644
+--- plugins/power/gsd-backlight.c
++++ plugins/power/gsd-backlight.c
+@@ -40,8 +40,6 @@ struct _GsdBacklight
+         gint brightness_step;
+ 
+ #ifdef __linux__
+-        GDBusProxy *logind_proxy;
+-
+         GUdevClient *udev;
+         GUdevDevice *udev_device;
+ 
+@@ -61,10 +59,6 @@ enum {
+         PROP_LAST,
+ };
+ 
+-#define SYSTEMD_DBUS_NAME                       "org.freedesktop.login1"
+-#define SYSTEMD_DBUS_PATH                       "/org/freedesktop/login1/session/auto"
+-#define SYSTEMD_DBUS_INTERFACE                  "org.freedesktop.login1.Session"
+-
+ static GParamSpec *props[PROP_LAST];
+ 
+ static void     gsd_backlight_initable_iface_init (GInitableIface  *iface);
+@@ -481,31 +475,13 @@ gsd_backlight_set_brightness_val_async (GsdBacklight *backlight,
+ #ifdef __linux__
+         if (backlight->udev_device != NULL) {
+                 BacklightHelperData *task_data;
++                  task_data = g_new0 (BacklightHelperData, 1);
++                  task_data->value = backlight->brightness_target;
++                  g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+ 
+-                if (backlight->logind_proxy) {
+-                        g_dbus_proxy_call (backlight->logind_proxy,
+-                                           "SetBrightness",
+-                                           g_variant_new ("(ssu)",
+-                                                          "backlight",
+-                                                          g_udev_device_get_name (backlight->udev_device),
+-                                                          backlight->brightness_target),
+-                                           G_DBUS_CALL_FLAGS_NONE,
+-                                           -1, NULL,
+-                                           NULL, NULL);
+-
+-                        percent = ABS_TO_PERCENTAGE (backlight->brightness_min,
+-                                                     backlight->brightness_max,
+-                                                     backlight->brightness_target);
+-                        g_task_return_int (task, percent);
+-                } else {
+-                        task_data = g_new0 (BacklightHelperData, 1);
+-                        task_data->value = backlight->brightness_target;
+-                        g_task_set_task_data (task, task_data, backlight_task_data_destroy);
+-
+-                        /* Task is set up now. Queue it and ensure we are working something. */
+-                        g_queue_push_tail (&backlight->tasks, task);
+-                        gsd_backlight_process_taskqueue (backlight);
+-                }
++                  /* Task is set up now. Queue it and ensure we are working something. */
++                  g_queue_push_tail (&backlight->tasks, task);
++                  gsd_backlight_process_taskqueue (backlight);
+ 
+                 return;
+         }
+@@ -823,7 +799,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+ {
+         GsdBacklight *backlight = GSD_BACKLIGHT (initable);
+         GnomeRROutput* output = NULL;
+-        GError *logind_error = NULL;
+ 
+         if (cancellable != NULL) {
+                 g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -832,38 +807,6 @@ gsd_backlight_initable_init (GInitable       *initable,
+         }
+ 
+ #ifdef __linux__
+-        backlight->logind_proxy =
+-                g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
+-                                               0,
+-                                               NULL,
+-                                               SYSTEMD_DBUS_NAME,
+-                                               SYSTEMD_DBUS_PATH,
+-                                               SYSTEMD_DBUS_INTERFACE,
+-                                               NULL, &logind_error);
+-        if (backlight->logind_proxy) {
+-                /* Check that the SetBrightness method does exist */
+-                g_dbus_proxy_call_sync (backlight->logind_proxy,
+-                                        "SetBrightness", NULL,
+-                                        G_DBUS_CALL_FLAGS_NONE, -1,
+-                                        NULL, &logind_error);
+-
+-                if (g_error_matches (logind_error, G_DBUS_ERROR,
+-                                     G_DBUS_ERROR_INVALID_ARGS)) {
+-                        /* We are calling the method with no arguments, so
+-                         * this is expected.
+-                         */
+-                        g_clear_error (&logind_error);
+-                } else {
+-                        /* Fail on anything else */
+-                        g_clear_object (&backlight->logind_proxy);
+-                }
+-        }
+-
+-        if (logind_error) {
+-                g_warning ("No logind found: %s", logind_error->message);
+-                g_error_free (logind_error);
+-        }
+-
+         /* Try finding a udev device. */
+         if (gsd_backlight_udev_init (backlight))
+                 goto found;
+@@ -905,7 +848,6 @@ gsd_backlight_finalize (GObject *object)
+ #ifdef __linux__
+         g_assert (backlight->active_task == NULL);
+         g_assert (g_queue_is_empty (&backlight->tasks));
+-        g_clear_object (&backlight->logind_proxy);
+         g_clear_object (&backlight->udev);
+         g_clear_object (&backlight->udev_device);
+         if (backlight->idle_update) {
diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index a70e28be5fa..9ceb1d13de9 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-settings-daemon'
 pkgname=gnome-settings-daemon
-version=3.34.1
-revision=2
+version=3.36.1
+revision=1
 build_style=meson
-configure_args+="-Dsystemd=false"
-hostmakedepends="cmake docbook-xsl glib-devel libglib-devel libxslt perl pkg-config"
+configure_args="-Dsystemd=false"
+hostmakedepends="cmake docbook-xsl gettext glib-devel libglib-devel libxslt perl pkg-config"
 makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-devel
  geoclue2-devel gnome-desktop-devel ibus-devel libcanberra-devel libgnomekbd-devel
  libgweather-devel libnotify-devel librsvg-devel libwacom-devel nss-devel
@@ -18,7 +18,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-settings-daemon"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=9981a20babf8da7744b7fbe175b9e36078bf08f3bf65fe5aedeb82cfe27ac11f
+checksum=3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" polkit"

From dd5869bebb9cb097ee9c1098023a5611a191d077 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:27 +0600
Subject: [PATCH 16/68] gnome-user-docs: update to 3.36.2.

---
 srcpkgs/gnome-user-docs/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-user-docs/template b/srcpkgs/gnome-user-docs/template
index 4cb55396e37..ca993346e3a 100644
--- a/srcpkgs/gnome-user-docs/template
+++ b/srcpkgs/gnome-user-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-user-docs'
 pkgname=gnome-user-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -10,7 +10,7 @@ depends="yelp"
 short_desc="User documentation for GNOME"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="CC-BY-3.0"
-homepage="https://github.com/GNOME/gnome-user-docs"
-#changelog="https://raw.githubusercontent.com/GNOME/gnome-user-docs/master/NEWS"
+homepage="https://gitlab.gnome.org/GNOME/gnome-user-docs"
+changelog="https://gitlab.gnome.org/GNOME/gnome-user-docs/-/raw/3.36.2/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=8f9907ff15fff97da75ece645cc86766703ac54d716d25563ba67ffed1af24ed
+checksum=198fe4c836775a5dc2543a6a520dfb0ac5bf292cdcb358a57c86f35f705e9958

From 317b4eb403f0c834d8c771bff1498499c766115f Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:36 +0600
Subject: [PATCH 17/68] gnome-initial-setup: update to 3.36.3.

---
 srcpkgs/gnome-initial-setup/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gnome-initial-setup/template b/srcpkgs/gnome-initial-setup/template
index aba5a094c28..caa33c2695e 100644
--- a/srcpkgs/gnome-initial-setup/template
+++ b/srcpkgs/gnome-initial-setup/template
@@ -1,10 +1,10 @@
 # Template file for 'gnome-initial-setup'
 pkgname=gnome-initial-setup
-version=3.34.1
-revision=2
+version=3.36.3
+revision=1
 build_style=meson
-configure_args="-Dsoftware-sources=disabled -Dsystemd=false"
-hostmakedepends="pkg-config glib-devel"
+configure_args="-Dparental_controls=disabled -Dsystemd=false"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="NetworkManager-devel accountsservice-devel libglib-devel
  gnome-desktop-devel cheese-devel libgweather-devel webkit2gtk-devel
  gnome-online-accounts-devel gdm-devel libpwquality-devel
@@ -17,4 +17,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Design/OS/InitialSetup"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e71f10ef6b631cd92ffde774e4130b32b2494b4df5ef288375d8b1957eeabfa1
+checksum=d8a933f8c822cc293cc10b532779f8562342ae2271b929879e8f108491f4c285

From 924364108d8bc1b683491286978ccbd90e94c364 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:43 +0600
Subject: [PATCH 18/68] evolution-data-server: update to 3.36.3.

---
 srcpkgs/evolution-data-server/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 4ae820be068..ebf8145f88c 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -1,7 +1,7 @@
 # Template file for 'evolution-data-server'
 pkgname=evolution-data-server
-version=3.36.1
-revision=2
+version=3.36.3
+revision=1
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
@@ -17,7 +17,7 @@ license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=13122b2edddb98306207d2a35d5ccae25a90702769ca0a0b51653b5984986796
+checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
 build_options="gir"
 if [ -z "$CROSS_BUILD" ]; then

From 158dcfc729aa2f4efdd957cff82413bdf13655a7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:45:56 +0600
Subject: [PATCH 19/68] evolution: update to 3.36.3.

---
 srcpkgs/evolution/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 560ed93da02..d95c07eb72c 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution'
 pkgname=evolution
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
@@ -19,7 +19,7 @@ license="LGPL-2.1-or-later, LGPL-3.0-or-later, GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=873acf1dbec38e67e169064645ac3a9b9a944bd2b633161df6e5f05700e36cb8
+checksum=54e16caa286c02d4fe94b43e33abf5cd6f3a1502181bb8cf557aadc886b5ca03
 shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 

From 31fad1952c51863004769f9dc7f31bdb9d43090c Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:04 +0600
Subject: [PATCH 20/68] evolution-ews: update to 3.36.3.

---
 srcpkgs/evolution-ews/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/evolution-ews/template b/srcpkgs/evolution-ews/template
index 4ff8116466c..38fd62d39e1 100644
--- a/srcpkgs/evolution-ews/template
+++ b/srcpkgs/evolution-ews/template
@@ -1,6 +1,6 @@
 # Template file for 'evolution-ews'
 pkgname=evolution-ews
-version=3.36.1
+version=3.36.3
 revision=1
 build_style=cmake
 configure_args="-DLIBEXEC_INSTALL_DIR=/usr/lib/evolution"
@@ -12,4 +12,4 @@ license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Apps/Evolution"
 changelog="https://raw.githubusercontent.com/GNOME/evolution-ews/gnome-3-36/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d0883c7d227827cc5c4468b7e31a3ee370bcd7d41a4dbb950ab5db36c9551ac1
+checksum=7a97a59b10f7a48a3bcf6d476c6a2c068ec5c48c546a433812691b8301752d04

From 1a50b9426ef21b5512687e3d79f11a68496af12b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:11 +0600
Subject: [PATCH 21/68] atk: update to 2.36.0.

---
 srcpkgs/atk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/atk/template b/srcpkgs/atk/template
index 7c14b116598..ca22d366198 100644
--- a/srcpkgs/atk/template
+++ b/srcpkgs/atk/template
@@ -1,18 +1,18 @@
 # Template file for 'atk'
 pkgname=atk
-version=2.34.1
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Dintrospection=$(vopt_if gir true false)"
-hostmakedepends="pkg-config glib-devel"
+hostmakedepends="gettext pkg-config glib-devel"
 makedepends="libglib-devel"
 short_desc="Set of interfaces for accessibility"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://developer.gnome.org/atk/"
 distfiles="${GNOME_SITE}/atk/${version%.*}/atk-${version}.tar.xz"
-checksum=d4f0e3b3d21265fcf2bc371e117da51c42ede1a71f6db1c834e6976bb20997cb
+checksum=fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
 
 # Package build options
 build_options="gir"

From 94ce682408c3ba5d5ae7c9f60a6ed9ec7163d074 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:19 +0600
Subject: [PATCH 22/68] at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index b383fe99bed..fb799af7e52 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -1,18 +1,17 @@
 # Template file for 'at-spi2-core'
 pkgname=at-spi2-core
-version=2.34.0
+version=2.36.0
 revision=1
 build_style=meson
 build_helper="gir"
-hostmakedepends="pkg-config dbus glib-devel"
-makedepends="libglib-devel libXext-devel libSM-devel libXtst-devel
- libXevie-devel dbus-devel"
+hostmakedepends="gettext pkg-config dbus glib-devel"
+makedepends="libglib-devel libSM-devel libXtst-devel dbus-devel"
 short_desc="Assistive Technology Service Provider Interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/at-spi2-core"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=d629cdbd674e539f8912028512af583990938c7b49e25184c126b00121ef11c6
+checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 
 # Package build options
 build_options="gir"

From 328af4215af6b60a60c6fca93110cda4ea8c21f2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:26 +0600
Subject: [PATCH 23/68] at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index 4351b7996f3..aa7b8839c9f 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -1,6 +1,6 @@
 # Template file for 'at-spi2-atk'
 pkgname=at-spi2-atk
-version=2.34.1
+version=2.34.2
 revision=1
 build_style=meson
 hostmakedepends="libtool pkg-config intltool glib-devel"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=776df930748fde71c128be6c366a987b98b6ee66d508ed9c8db2355bf4b9cc16
+checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From 04f974f90ebf8dd526293112fdcb903320b69975 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:41 +0600
Subject: [PATCH 24/68] python-atspi: update to 2.36.0.

---
 srcpkgs/python-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python-atspi/template b/srcpkgs/python-atspi/template
index 0141d97f85d..4881056ad76 100644
--- a/srcpkgs/python-atspi/template
+++ b/srcpkgs/python-atspi/template
@@ -1,8 +1,8 @@
 # Template file for 'python-atspi'
 # Keep python3-atspi in sync
 pkgname=python-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From 1cffb422761ba8ac0b2b5d7a49a39af7eecbb0df Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:48 +0600
Subject: [PATCH 25/68] python3-atspi: update to 2.36.0.

---
 srcpkgs/python3-atspi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-atspi/template b/srcpkgs/python3-atspi/template
index a33a374fe18..b2360822acf 100644
--- a/srcpkgs/python3-atspi/template
+++ b/srcpkgs/python3-atspi/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-atspi'
 pkgname=python3-atspi
-version=2.32.1
-revision=4
+version=2.36.0
+revision=1
 archs=noarch
 wrksrc="pyatspi-${version}"
 build_style=gnu-configure
@@ -13,4 +13,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/pyatspi2"
 distfiles="${GNOME_SITE}/pyatspi/${version%.*}/pyatspi-${version}.tar.xz"
-checksum=84954a5bbeacc83643f05778d8beafcab8208e11b39b24637b4c4dd1f8620389
+checksum=5136c1bf919e101d4ec901a276e86ea60e5881a8ff7763e356f19840e5ffe1dd

From 9402bde5011b7a5dce9823d409d82ad55071e703 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:46:56 +0600
Subject: [PATCH 26/68] folks: update to 0.14.0.

---
 common/shlibs          |  7 ++++---
 srcpkgs/folks/template | 12 ++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 048cce8c9bb..196eb3eadfc 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -839,9 +839,10 @@ libdmr.so.0.1 deepin-movie-reborn-3.2.5_1
 libgjs.so.0 gjs-1.65.2_1
 libtelepathy-glib.so.0 telepathy-glib-0.15.5_1
 libaccountsservice.so.0 accountsservice-0.6.4_1
-libfolks.so.25 folks-0.9.5_1
-libfolks-telepathy.so.25 folks-0.9.5_1
-libfolks-eds.so.25 folks-0.9.5_1
+libfolks.so.25 folks-0.14.0_1
+libfolks-dummy.so.25 folks-0.14.0_1
+libfolks-telepathy.so.25 folks-0.14.0_1
+libfolks-eds.so.25 folks-0.14.0_1
 libnice.so.10 libnice-0.1.0_1
 libgupnp-igd-1.0.so.4 gupnp-igd-0.2.0_1
 libtelepathy-logger.so.3 telepathy-logger-0.6.0_1
diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index 3310c54fadd..e21ca9c1077 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -1,12 +1,12 @@
 # Template file for 'folks'
 pkgname=folks
-version=0.13.1
-revision=2
+version=0.14.0
+revision=1
 build_style=meson
 build_helper=gir
-configure_args="-Db_lto=false -Dlibsocialweb-backend=false"
-hostmakedepends="pkg-config intltool glib-devel vala python gobject-introspection
- evolution-data-server-devel"
+configure_args="-Db_lto=false"
+hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
+ gobject-introspection evolution-data-server-devel"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
  libgee08-devel evolution-data-server-devel tracker-devel"
 depends="zeitgeist"
@@ -15,7 +15,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3df1c663b82fe211aead2b31cae1fc41d124e85436375762f6745c45ba46aa5d
+checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"

From a79d76edfcd575775bffd57b67ecad67f8596b5b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:03 +0600
Subject: [PATCH 27/68] file-roller: update to 3.36.2.

---
 srcpkgs/file-roller/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template
index 5fb76d97307..6a0c280f0d5 100644
--- a/srcpkgs/file-roller/template
+++ b/srcpkgs/file-roller/template
@@ -1,6 +1,6 @@
 # Template file for 'file-roller'
 pkgname=file-roller
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel itstool pkg-config"
@@ -12,4 +12,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Apps/FileRoller"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b9144de8f536f583ec29d703c2c170bf2d00c6c166cd5e3f7efabda551f10478
+checksum=268f7fdad8d2a78dfed5e82eb8710bad389c311b720666d6f07a04ed51056bd2

From 0eb800ec0a232740979ab48be8ecfc26439c17a1 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:10 +0600
Subject: [PATCH 28/68] dconf-editor: update to 3.36.2.

---
 srcpkgs/dconf-editor/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/dconf-editor/template b/srcpkgs/dconf-editor/template
index de250bbc8a9..10ab8d79264 100644
--- a/srcpkgs/dconf-editor/template
+++ b/srcpkgs/dconf-editor/template
@@ -1,13 +1,13 @@
 # Template file for 'dconf-editor'
 pkgname=dconf-editor
-version=3.36.0
+version=3.36.2
 revision=1
 build_style=meson
-hostmakedepends="docbook-xsl glib-devel libxslt pkg-config vala"
+hostmakedepends="gettext docbook-xsl glib-devel libxslt pkg-config vala"
 makedepends="dconf-devel gtk+3-devel"
 short_desc="Low-level configuration system - GTK+ editor"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/dconf"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=72eed05670917f8e43200e40ccc6be60211f0a87b017534eac1fd6c7173a0693
+checksum=edcec8867f018589125f177407760c642bbbb52fe5122daac5905223d6b3e1c7

From c854560d2857d809b94b0165f6b5e485e229dcd2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:16 +0600
Subject: [PATCH 29/68] tracker: update to 2.3.4.

---
 srcpkgs/tracker/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index 37074cb348d..e814f77c711 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -1,13 +1,13 @@
 # Template file for 'tracker'
 pkgname=tracker
-version=2.3.1
-revision=2
+version=2.3.4
+revision=1
 build_style=meson
 build_helper="gir"
 configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false
  -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled
  -Dsystemd_user_services=no"
-hostmakedepends="pkg-config glib-devel vala"
+hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
@@ -16,7 +16,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://live.gnome.org/Tracker"
 distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz"
-checksum=b6748726e465ad2f4d991560634b1fd0df8841f3d981b3b837c4162abedf08a1
+checksum=577952244ab977c78b0b88e2f63c4197eaba16e4d66bff692b7f58993e06516d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" dbus"

From 36a067d142df691e092d45409bb70459a6c3ff51 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:23 +0600
Subject: [PATCH 30/68] orca: update to 3.36.2.

---
 srcpkgs/orca/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/orca/template b/srcpkgs/orca/template
index f70202e6d76..8a70c849f6d 100644
--- a/srcpkgs/orca/template
+++ b/srcpkgs/orca/template
@@ -1,6 +1,6 @@
 # Template file for 'orca'
 pkgname=orca
-version=3.36.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -13,7 +13,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Orca"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c1ac648b6be31488c26ff959114287869df9ce3ca21999e40ded87741c98831f
+checksum=cf0055b76f2159c33c9d9f7debb769435c201bbfa6dcf0f01fdc58e92947bf43
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" python3-gobject-devel"

From 01e66f9ed1c51da02519717de6840f76f37f7596 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:39 +0600
Subject: [PATCH 31/68] gnome-getting-started-docs: update to 3.36.2.

---
 srcpkgs/gnome-getting-started-docs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gnome-getting-started-docs/template b/srcpkgs/gnome-getting-started-docs/template
index 5bec93490ba..bed9b696162 100644
--- a/srcpkgs/gnome-getting-started-docs/template
+++ b/srcpkgs/gnome-getting-started-docs/template
@@ -1,6 +1,6 @@
 # Template file for 'gnome-getting-started-docs'
 pkgname=gnome-getting-started-docs
-version=3.34.0
+version=3.36.2
 revision=1
 archs=noarch
 build_style=gnu-configure
@@ -11,4 +11,4 @@ license="CC-BY-SA-3.0"
 homepage="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs"
 #changelog="https://gitlab.gnome.org/GNOME/gnome-getting-started-docs/raw/master/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=f70ce2ca23ad786215f3c92ec85783e3aabed07e4f78700fa27f9b2cf76e03db
+checksum=0494b8913a946b6450536e120c154abd29238ebba2f52734592b1f645e521dc6

From 0b0397e8150aea51ff103047ac7b217dfcbeb492 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:47 +0600
Subject: [PATCH 32/68] gnome-panel: update to 3.36.1.

---
 common/shlibs                | 3 ++-
 srcpkgs/gnome-panel/template | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 196eb3eadfc..6991365f14a 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -570,7 +570,8 @@ libpackagekit-glib2.so.18 PackageKit-1.1.12_1
 libpsl.so.5 libpsl-0.20.2_1
 libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
-libpanel-applet.so.3 gnome-panel-3.30.0_1
+libgnome-panel.so.0 gnome-panel-3.36.1_1
+libpanel-applet.so.3 gnome-panel-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/gnome-panel/template b/srcpkgs/gnome-panel/template
index 70f23b8b551..9b00bfab658 100644
--- a/srcpkgs/gnome-panel/template
+++ b/srcpkgs/gnome-panel/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-panel'
 pkgname=gnome-panel
-version=3.34.1
-revision=3
+version=3.36.1
+revision=1
 build_style=gnu-configure
 configure_args="ax_cv_zoneinfo_tzdir=/usr/share/zoneinfo"
 hostmakedepends="gettext-devel glib-devel itstool pkg-config tzdata gettext"
@@ -14,7 +14,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, GFDL-1.1-or-later, LGPL-2.1-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomePanel"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=a6bc0255252eeb4b964bcbe55fd7908b69f914c062c5ec8dff5ac0262d29b90d
+checksum=1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3
 patch_args="-Np1"
 
 gnome-panel-devel_package() {

From 45ffb11af84e0994a465e09bd67cbc4c56c73901 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:47:54 +0600
Subject: [PATCH 33/68] metacity: update to 3.36.1.

---
 common/shlibs                                 |  1 +
 .../patches/compositor-vulkan-fix-build.patch | 29 +++++++++++++++++++
 srcpkgs/metacity/template                     |  4 +--
 3 files changed, 32 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch

diff --git a/common/shlibs b/common/shlibs
index 6991365f14a..dc40316a92d 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -572,6 +572,7 @@ libsoup-2.4.so.1 libsoup-2.34.0_1
 libsoup-gnome-2.4.so.1 libsoup-gnome-2.34.0_1
 libgnome-panel.so.0 gnome-panel-3.36.1_1
 libpanel-applet.so.3 gnome-panel-3.36.1_1
+libmetacity.so.1 metacity-3.36.1_1
 libuninum.so.5 libuninum-2.7_1
 libunique-3.0.so.0 libunique-2.91.4_1
 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1
diff --git a/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
new file mode 100644
index 00000000000..960582ded7d
--- /dev/null
+++ b/srcpkgs/metacity/patches/compositor-vulkan-fix-build.patch
@@ -0,0 +1,29 @@
+From 99361f28c8763ea4569b5ae9876028d53ac9a234 Mon Sep 17 00:00:00 2001
+From: Alberts Muktupāvels <alberts.muktupavels@gmail.com>
+Date: Sun, 24 May 2020 13:58:51 +0300
+Subject: [PATCH] compositor-vulkan: fix build
+
+VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE enum was removed in 1.2.140.
+
+https://gitlab.gnome.org/GNOME/metacity/-/issues/10
+---
+ src/compositor/meta-compositor-vulkan.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git src/compositor/meta-compositor-vulkan.c src/compositor/meta-compositor-vulkan.c
+index b87b5194..53b7b3ff 100644
+--- src/compositor/meta-compositor-vulkan.c
++++ src/compositor/meta-compositor-vulkan.c
+@@ -810,7 +810,9 @@ device_type_to_string (VkPhysicalDeviceType type)
+         return "cpu";
+         break;
+ 
++#if VK_HEADER_VERSION < 140
+       case VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE:
++#endif
+       case VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM:
+       default:
+         break;
+-- 
+GitLab
+
diff --git a/srcpkgs/metacity/template b/srcpkgs/metacity/template
index 7fb86fd964c..7e22aeab5c7 100644
--- a/srcpkgs/metacity/template
+++ b/srcpkgs/metacity/template
@@ -1,6 +1,6 @@
 # Template file for 'metacity'
 pkgname=metacity
-version=3.30.1
+version=3.36.1
 revision=1
 build_style=gnu-configure
 hostmakedepends="gettext gettext-devel glib-devel itstool pkg-config yelp-tools zenity"
@@ -14,4 +14,4 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/metacity"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=0f1311b7aa38de71c66080bd2b744de2cd9580afcaee9c6097a7d3f5c421798a
+checksum=11f07693e2b266840759063a4bc807346070e8e7fec8f53cd0757f6662c1b323

From e2e44026a1967664875a0dd2a416cf3ad0c5ecad Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:01 +0600
Subject: [PATCH 34/68] gnome-menus: update to 3.36.0.

---
 srcpkgs/gnome-menus/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-menus/template b/srcpkgs/gnome-menus/template
index 29102129c38..e787fb8de6b 100644
--- a/srcpkgs/gnome-menus/template
+++ b/srcpkgs/gnome-menus/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-menus'
 pkgname=gnome-menus
-version=3.32.0
-revision=2
+version=3.36.0
+revision=1
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-static"
@@ -12,7 +12,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.0-or-later"
 homepage="https://gitlab.gnome.org/GNOME/gnome-menus"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=c850c64b2074265fe59e099a340b8689cf3dd4658dc9feddd2ab5e95f1a74b74
+checksum=d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f
 
 build_options="gir"
 build_options_default="gir"

From 8e451546ff3c8d564dcd216c80c59fa0cdf6a7b7 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:09 +0600
Subject: [PATCH 35/68] gnome-flashback: update to 3.36.3.

Added PAM config to enable screen locking.
---
 .../gnome-flashback/files/gnome-flashback.pam |  6 ++++
 .../gnome-flashback/patches/compiz-0.8.patch  | 28 +++++++++++++++++++
 srcpkgs/gnome-flashback/template              | 27 ++++++++++++------
 3 files changed, 52 insertions(+), 9 deletions(-)
 create mode 100644 srcpkgs/gnome-flashback/files/gnome-flashback.pam
 create mode 100644 srcpkgs/gnome-flashback/patches/compiz-0.8.patch

diff --git a/srcpkgs/gnome-flashback/files/gnome-flashback.pam b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
new file mode 100644
index 00000000000..ebbb51dd0e8
--- /dev/null
+++ b/srcpkgs/gnome-flashback/files/gnome-flashback.pam
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth       include	system-auth
+auth       optional     pam_gnome_keyring.so
+account    include	system-auth
+password   include	system-auth
+session    include	system-auth
diff --git a/srcpkgs/gnome-flashback/patches/compiz-0.8.patch b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
new file mode 100644
index 00000000000..e8a2a5c87fd
--- /dev/null
+++ b/srcpkgs/gnome-flashback/patches/compiz-0.8.patch
@@ -0,0 +1,28 @@
+diff --git configure configure
+index 26cea51..d2463cc 100755
+--- configure
++++ configure
+@@ -20842,8 +20842,8 @@ fi
+ if test "x$with_compiz_session" != "xno"; then :
+ 
+   if test -n "$PKG_CONFIG" && \
+-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.9.14.0\""; } >&5
+-  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.9.14.0") 2>&5
++    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcompizconfig >= 0.8.16.0\""; } >&5
++  ($PKG_CONFIG --exists --print-errors "libcompizconfig >= 0.8.16.0") 2>&5
+   ac_status=$?
+   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; then
+diff --git configure.ac configure.ac
+index b6e1470..d28a70b 100644
+--- configure.ac
++++ configure.ac
+@@ -340,7 +340,7 @@ AC_ARG_WITH([compiz-session],
+             [with_compiz_session="$withval"], [with_compiz_session="auto"])
+ 
+ AS_IF([test "x$with_compiz_session" != "xno"], [
+-  PKG_CHECK_EXISTS([libcompizconfig >= 0.9.14.0],
++  PKG_CHECK_EXISTS([libcompizconfig >= 0.8.16.0],
+                    [found_compiz="yes"], [found_compiz="no"])
+ 
+   AS_IF([test "x$found_compiz" = "xyes"], [
diff --git a/srcpkgs/gnome-flashback/template b/srcpkgs/gnome-flashback/template
index d32120cab6f..08566df5fd4 100644
--- a/srcpkgs/gnome-flashback/template
+++ b/srcpkgs/gnome-flashback/template
@@ -1,20 +1,29 @@
 # Template file for 'gnome-flashback'
 pkgname=gnome-flashback
-version=3.34.2
+version=3.36.3
 revision=1
 build_helper=gir
 build_style=gnu-configure
-configure_args="--enable-compile-warnings=minimum"
-hostmakedepends="pkg-config automake glib-devel gettext"
-makedepends="gtk+3-devel gsettings-desktop-schemas-devel
- libglib-devel gdk-pixbuf-devel upower-devel ibus-devel polkit-devel
- pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
- libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel"
+configure_args="--with-compiz-session --enable-compile-warnings=minimum"
+hostmakedepends="gettext-devel pkg-config automake glib-devel gettext libtool"
+makedepends="gtk+3-devel pam-devel gsettings-desktop-schemas-devel elogind-devel
+ gdm-devel libcompizconfig-devel libglib-devel gdk-pixbuf-devel upower-devel ibus-devel
+ polkit-devel pulseaudio-devel libcanberra-devel libxcb-devel libX11-devel pango-devel
+ libxkbfile-devel gnome-bluetooth-devel gnome-desktop-devel gnome-panel-devel"
 depends="gnome-bluetooth gnome-session gnome-settings-daemon
- gnome-panel gnome-themes-standard metacity"
+ gnome-panel gnome-themes-extra metacity"
 short_desc="GNOME 3 session with similar user experience to the GNOME 2.x series"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeFlashback"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=3be65388cd2c8f39741bcc05da87ef40035183a9a39502d67696242c2aeb469c
+checksum=2dba9ea40f2da81c22954a8ccc29f8f1fa4ca8395a6bb552506635832751c1a7
+
+pre_configure() {
+	autoreconf -vfi
+}
+
+post_install() {
+	vinstall ${FILESDIR}/gnome-flashback.pam 644 /etc/pam.d gnome-flashback
+	vsed -i -e "s/ --systemd//g" ${DESTDIR}/usr/libexec/gnome-flashback-{compiz,metacity}
+}

From 08356c8b5c07b68cca47a05e7af214738605d719 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:24 +0600
Subject: [PATCH 36/68] graphene: update to 1.10.0.

---
 srcpkgs/graphene/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/graphene/template b/srcpkgs/graphene/template
index f2fe81a3f47..cb7385fedb7 100644
--- a/srcpkgs/graphene/template
+++ b/srcpkgs/graphene/template
@@ -1,10 +1,10 @@
 # Template file for 'graphene'
 pkgname=graphene
-version=1.8.2
-revision=2
+version=1.10.0
+revision=1
 build_style=meson
 build_helper="gir"
-configure_args="-Dtests=false -Dbenchmarks=false
+configure_args="-Dtests=false -Darm_neon=false
  -Dintrospection=$(vopt_if gir true false)"
 hostmakedepends="pkg-config"
 makedepends="libglib-devel"
@@ -13,13 +13,13 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://github.com/ebassi/graphene"
 distfiles="${GNOME_SITE}/graphene/${version%.*}/graphene-${version}.tar.xz"
-checksum=b3fcf20996e57b1f4df3941caac10f143bb29890a42f7a65407cd19271fc89f7
+checksum=406d97f51dd4ca61e91f84666a00c3e976d3e667cd248b76d92fdb35ce876499
 
 build_options="gir"
 build_options_default="gir"
 
 post_install() {
-	vlicense LICENSE
+	vlicense LICENSE.txt LICENSE
 }
 
 graphene-devel_package() {

From 23cee18f5fcd4d95109e915c7c08e2763f68c026 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:30 +0600
Subject: [PATCH 37/68] mutter: update to 3.36.3.

---
 common/shlibs                                 |  18 +-
 .../patches/fix-cogl-egl-includes.patch       |  11 -
 srcpkgs/mutter/patches/pipewire-0.3.patch     | 521 ------------------
 srcpkgs/mutter/template                       |  27 +-
 4 files changed, 23 insertions(+), 554 deletions(-)
 delete mode 100644 srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
 delete mode 100644 srcpkgs/mutter/patches/pipewire-0.3.patch

diff --git a/common/shlibs b/common/shlibs
index dc40316a92d..acc53a02412 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3019,15 +3019,15 @@ libdecoration.so.0 compiz-core-0.8.14_1
 libcompizconfig.so.0 libcompizconfig-0.8.14_1
 libemeraldengine.so.0 emerald-0.8.14_1
 libhangul.so.1 libhangul-0.1.0_1
-libmutter-5.so.0 mutter-3.34.1_1
-libmutter-clutter-5.so mutter-3.34.1_1
-libmutter-clutter-5.so.0 mutter-3.34.1_1
-libmutter-cogl-path-5.so mutter-3.34.1_1
-libmutter-cogl-path-5.so.0 mutter-3.34.1_1
-libmutter-cogl-5.so mutter-3.34.1_1
-libmutter-cogl-5.so.0 mutter-3.34.1_1
-libmutter-cogl-pango-5.so mutter-3.34.1_1
-libmutter-cogl-pango-5.so.0 mutter-3.34.1_1
+libmutter-6.so.0 mutter-3.36.3_1
+libmutter-clutter-6.so mutter-3.36.3_1
+libmutter-clutter-6.so.0 mutter-3.36.3_1
+libmutter-cogl-path-6.so mutter-3.36.3_1
+libmutter-cogl-path-6.so.0 mutter-3.36.3_1
+libmutter-cogl-6.so mutter-3.36.3_1
+libmutter-cogl-6.so.0 mutter-3.36.3_1
+libmutter-cogl-pango-6.so mutter-3.36.3_1
+libmutter-cogl-pango-6.so.0 mutter-3.36.3_1
 libgeoclue-2.so.0 geoclue2-2.4.4_1
 libgepub.so.0 libgepub-0.4_1
 libslopy.so.7.5 slop-7.5_1
diff --git a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch b/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
deleted file mode 100644
index d90988887c3..00000000000
--- a/srcpkgs/mutter/patches/fix-cogl-egl-includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- cogl/cogl/meson.build	2019-10-08 19:15:10.000000000 +0200
-+++ cogl/cogl/meson.build	2019-12-16 15:45:44.037640548 +0100
-@@ -48,7 +48,7 @@
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
diff --git a/srcpkgs/mutter/patches/pipewire-0.3.patch b/srcpkgs/mutter/patches/pipewire-0.3.patch
deleted file mode 100644
index ebff65fba85..00000000000
--- a/srcpkgs/mutter/patches/pipewire-0.3.patch
+++ /dev/null
@@ -1,521 +0,0 @@
-Build mutter against pipewire-0.3, based on a patch at:
-https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1062
---- meson.build
-+++ meson.build
-@@ -50,7 +50,7 @@ libinput_req = '>= 1.7'
- gbm_req = '>= 10.3'
-
- # screen cast version requirements
--libpipewire_req = '>= 0.2.5'
-+libpipewire_req = '>= 0.3.0'
-
- gnome = import('gnome')
- pkg = import('pkgconfig')
-@@ -241,7 +241,7 @@ endif
-
- have_remote_desktop = get_option('remote_desktop')
- if have_remote_desktop
--  libpipewire_dep = dependency('libpipewire-0.2', version: libpipewire_req)
-+  libpipewire_dep = dependency('libpipewire-0.3', version: libpipewire_req)
- endif
-
- have_introspection = get_option('introspection')
-diff --git a/src/backends/meta-screen-cast-stream-src.c b/src/backends/meta-screen-cast-stream-src.c
-index 82c5cba436..ba1ce94a7e 100644
---- src/backends/meta-screen-cast-stream-src.c
-+++ src/backends/meta-screen-cast-stream-src.c
-@@ -29,6 +29,7 @@
- #include <spa/param/props.h>
- #include <spa/param/format-utils.h>
- #include <spa/param/video/format-utils.h>
-+#include <spa/utils/result.h>
- #include <stdint.h>
- #include <sys/mman.h>
-
-@@ -62,15 +63,6 @@ enum
-
- static guint signals[N_SIGNALS];
-
--typedef struct _MetaSpaType
--{
--  struct spa_type_media_type media_type;
--  struct spa_type_media_subtype media_subtype;
--  struct spa_type_format_video format_video;
--  struct spa_type_video_format video_format;
--  uint32_t meta_cursor;
--} MetaSpaType;
--
- typedef struct _MetaPipeWireSource
- {
-   GSource base;
-@@ -82,19 +74,19 @@ typedef struct _MetaScreenCastStreamSrcPrivate
- {
-   MetaScreenCastStream *stream;
-
-+  struct pw_context *pipewire_context;
-   struct pw_core *pipewire_core;
--  struct pw_remote *pipewire_remote;
--  struct pw_type *pipewire_type;
-   MetaPipeWireSource *pipewire_source;
--  struct spa_hook pipewire_remote_listener;
-+  struct spa_hook pipewire_core_listener;
-
-   gboolean is_enabled;
-
-   struct pw_stream *pipewire_stream;
-   struct spa_hook pipewire_stream_listener;
-+  uint32_t node_id;
-
--  MetaSpaType spa_type;
-   struct spa_video_info_raw video_format;
-+  int video_stride;
-
-   uint64_t last_frame_timestamp_us;
-
-@@ -112,8 +104,6 @@ G_DEFINE_TYPE_WITH_CODE (MetaScreenCastStreamSrc,
-                                                 meta_screen_cast_stream_src_init_initable_iface)
-                          G_ADD_PRIVATE (MetaScreenCastStreamSrc))
-
--#define PROP_RANGE(min, max) 2, (min), (max)
--
- static void
- meta_screen_cast_stream_src_get_specs (MetaScreenCastStreamSrc *src,
-                                        int                     *width,
-@@ -286,9 +276,6 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-                                                               int                      x,
-                                                               int                      y)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-
-   spa_meta_cursor->id = 1;
-@@ -300,7 +287,7 @@ meta_screen_cast_stream_src_set_empty_cursor_sprite_metadata (MetaScreenCastStre
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   spa_meta_cursor->hotspot.x = 0;
-@@ -317,9 +304,6 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-                                                         int                      y,
-                                                         float                    scale)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   CoglTexture *cursor_texture;
-   struct spa_meta_bitmap *spa_meta_bitmap;
-   int hotspot_x, hotspot_y;
-@@ -346,7 +330,7 @@ meta_screen_cast_stream_src_set_cursor_sprite_metadata (MetaScreenCastStreamSrc
-   spa_meta_bitmap = SPA_MEMBER (spa_meta_cursor,
-                                 spa_meta_cursor->bitmap_offset,
-                                 struct spa_meta_bitmap);
--  spa_meta_bitmap->format = spa_type->video_format.RGBA;
-+  spa_meta_bitmap->format = SPA_VIDEO_FORMAT_RGBA;
-   spa_meta_bitmap->offset = sizeof (struct spa_meta_bitmap);
-
-   meta_cursor_sprite_get_hotspot (cursor_sprite, &hotspot_x, &hotspot_y);
-@@ -382,12 +366,10 @@ static void
- add_cursor_metadata (MetaScreenCastStreamSrc *src,
-                      struct spa_buffer       *spa_buffer)
- {
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  MetaSpaType *spa_type = &priv->spa_type;
-   struct spa_meta_cursor *spa_meta_cursor;
-
--  spa_meta_cursor = spa_buffer_find_meta (spa_buffer, spa_type->meta_cursor);
-+  spa_meta_cursor = spa_buffer_find_meta_data (spa_buffer, SPA_META_Cursor,
-+                                               sizeof (*spa_meta_cursor));
-   if (spa_meta_cursor)
-     meta_screen_cast_stream_src_set_cursor_metadata (src, spa_meta_cursor);
- }
-@@ -447,14 +429,14 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-     {
-       data = spa_buffer->datas[0].data;
-     }
--  else if (spa_buffer->datas[0].type == priv->pipewire_type->data.MemFd)
-+  else if (spa_buffer->datas[0].type == SPA_DATA_MemFd)
-     {
-       map = mmap (NULL, spa_buffer->datas[0].maxsize + spa_buffer->datas[0].mapoffset,
-                   PROT_READ | PROT_WRITE, MAP_SHARED,
-                   spa_buffer->datas[0].fd, 0);
-       if (map == MAP_FAILED)
-         {
--          g_warning ("Failed to mmap pipewire stream buffer: %s\n",
-+          g_warning ("Failed to mmap pipewire stream buffer: %s",
-                      strerror (errno));
-           return;
-         }
-@@ -469,28 +451,30 @@ meta_screen_cast_stream_src_maybe_record_frame (MetaScreenCastStreamSrc *src)
-
-   if (meta_screen_cast_stream_src_record_frame (src, data))
-     {
--      struct spa_meta_video_crop *spa_meta_video_crop;
-+      struct spa_meta_region *spa_meta_video_crop;
-
-       spa_buffer->datas[0].chunk->size = spa_buffer->datas[0].maxsize;
-+      spa_buffer->datas[0].chunk->stride = priv->video_stride;
-
-       /* Update VideoCrop if needed */
-       spa_meta_video_crop =
--        spa_buffer_find_meta (spa_buffer, priv->pipewire_type->meta.VideoCrop);
-+        spa_buffer_find_meta_data (spa_buffer, SPA_META_VideoCrop,
-+                                   sizeof (*spa_meta_video_crop));
-       if (spa_meta_video_crop)
-         {
-           if (meta_screen_cast_stream_src_get_videocrop (src, &crop_rect))
-             {
--              spa_meta_video_crop->x = crop_rect.x;
--              spa_meta_video_crop->y = crop_rect.y;
--              spa_meta_video_crop->width = crop_rect.width;
--              spa_meta_video_crop->height = crop_rect.height;
-+              spa_meta_video_crop->region.position.x = crop_rect.x;
-+              spa_meta_video_crop->region.position.y = crop_rect.y;
-+              spa_meta_video_crop->region.size.width = crop_rect.width;
-+              spa_meta_video_crop->region.size.height = crop_rect.height;
-             }
-           else
-             {
--              spa_meta_video_crop->x = 0;
--              spa_meta_video_crop->y = 0;
--              spa_meta_video_crop->width = priv->stream_width;
--              spa_meta_video_crop->height = priv->stream_height;
-+              spa_meta_video_crop->region.position.x = 0;
-+              spa_meta_video_crop->region.position.y = 0;
-+              spa_meta_video_crop->region.size.width = priv->stream_width;
-+              spa_meta_video_crop->region.size.height = priv->stream_height;
-             }
-         }
-     }
-@@ -555,7 +539,6 @@ on_stream_state_changed (void                 *data,
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  uint32_t node_id;
-
-   switch (state)
-     {
-@@ -563,14 +546,12 @@ on_stream_state_changed (void                 *data,
-       g_warning ("pipewire stream error: %s", error_message);
-       meta_screen_cast_stream_src_notify_closed (src);
-       break;
--    case PW_STREAM_STATE_CONFIGURE:
--      node_id = pw_stream_get_node_id (priv->pipewire_stream);
--      g_signal_emit (src, signals[READY], 0, (unsigned int) node_id);
--      break;
--    case PW_STREAM_STATE_UNCONNECTED:
--    case PW_STREAM_STATE_CONNECTING:
--    case PW_STREAM_STATE_READY:
-     case PW_STREAM_STATE_PAUSED:
-+      if (priv->node_id == SPA_ID_INVALID && priv->pipewire_stream)
-+        {
-+          priv->node_id = pw_stream_get_node_id (priv->pipewire_stream);
-+          g_signal_emit (src, signals[READY], 0, (unsigned int) priv->node_id);
-+        }
-       if (meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_disable (src);
-       break;
-@@ -578,68 +559,69 @@ on_stream_state_changed (void                 *data,
-       if (!meta_screen_cast_stream_src_is_enabled (src))
-         meta_screen_cast_stream_src_enable (src);
-       break;
-+    case PW_STREAM_STATE_UNCONNECTED:
-+    case PW_STREAM_STATE_CONNECTING:
-+      break;
-     }
- }
-
- static void
--on_stream_format_changed (void                 *data,
--                          const struct spa_pod *format)
-+on_stream_param_changed (void                 *data,
-+                         uint32_t              id,
-+                         const struct spa_pod *format)
- {
-   MetaScreenCastStreamSrc *src = data;
-   MetaScreenCastStreamSrcPrivate *priv =
-     meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   uint8_t params_buffer[1024];
-   int32_t width, height, stride, size;
-   struct spa_pod_builder pod_builder;
-   const struct spa_pod *params[3];
-   const int bpp = 4;
-
--  if (!format)
--    {
--      pw_stream_finish_format (priv->pipewire_stream, 0, NULL, 0);
--      return;
--    }
-+  if (!format || id != SPA_PARAM_Format)
-+    return;
-
-   spa_format_video_raw_parse (format,
--                              &priv->video_format,
--                              &priv->spa_type.format_video);
-+                              &priv->video_format);
-
-   width = priv->video_format.size.width;
-   height = priv->video_format.size.height;
-   stride = SPA_ROUND_UP_N (width * bpp, 4);
-   size = height * stride;
-
-+  priv->video_stride = stride;
-+
-   pod_builder = SPA_POD_BUILDER_INIT (params_buffer, sizeof (params_buffer));
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idBuffers, pipewire_type->param_buffers.Buffers,
--    ":", pipewire_type->param_buffers.size, "i", size,
--    ":", pipewire_type->param_buffers.stride, "i", stride,
--    ":", pipewire_type->param_buffers.buffers, "iru", 16, PROP_RANGE (2, 16),
--    ":", pipewire_type->param_buffers.align, "i", 16);
--
--  params[1] = spa_pod_builder_object (
-+    SPA_TYPE_OBJECT_ParamBuffers, SPA_PARAM_Buffers,
-+    SPA_PARAM_BUFFERS_buffers, SPA_POD_CHOICE_RANGE_Int (16, 2, 16),
-+    SPA_PARAM_BUFFERS_blocks, SPA_POD_Int (1),
-+    SPA_PARAM_BUFFERS_size, SPA_POD_Int (size),
-+    SPA_PARAM_BUFFERS_stride, SPA_POD_Int (stride),
-+    SPA_PARAM_BUFFERS_align, SPA_POD_Int (16));
-+
-+  params[1] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", pipewire_type->meta.VideoCrop,
--    ":", pipewire_type->param_meta.size, "i", sizeof (struct spa_meta_video_crop));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_VideoCrop),
-+    SPA_PARAM_META_size, SPA_POD_Int (sizeof (struct spa_meta_region)));
-
--  params[2] = spa_pod_builder_object (
-+  params[2] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idMeta, pipewire_type->param_meta.Meta,
--    ":", pipewire_type->param_meta.type, "I", priv->spa_type.meta_cursor,
--    ":", pipewire_type->param_meta.size, "i", CURSOR_META_SIZE (64, 64));
-+    SPA_TYPE_OBJECT_ParamMeta, SPA_PARAM_Meta,
-+    SPA_PARAM_META_type, SPA_POD_Id (SPA_META_Cursor),
-+    SPA_PARAM_META_size, SPA_POD_Int (CURSOR_META_SIZE (64, 64)));
-
--  pw_stream_finish_format (priv->pipewire_stream, 0,
--                           params, G_N_ELEMENTS (params));
-+  pw_stream_update_params (priv->pipewire_stream, params, G_N_ELEMENTS (params));
- }
-
- static const struct pw_stream_events stream_events = {
-   PW_VERSION_STREAM_EVENTS,
-   .state_changed = on_stream_state_changed,
--  .format_changed = on_stream_format_changed,
-+  .param_changed = on_stream_param_changed,
- };
-
- static struct pw_stream *
-@@ -652,8 +634,6 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   uint8_t buffer[1024];
-   struct spa_pod_builder pod_builder =
-     SPA_POD_BUILDER_INIT (buffer, sizeof (buffer));
--  MetaSpaType *spa_type = &priv->spa_type;
--  struct pw_type *pipewire_type = priv->pipewire_type;
-   float frame_rate;
-   MetaFraction frame_rate_fraction;
-   struct spa_fraction max_framerate;
-@@ -661,7 +641,9 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   const struct spa_pod *params[1];
-   int result;
-
--  pipewire_stream = pw_stream_new (priv->pipewire_remote,
-+  priv->node_id = SPA_ID_INVALID;
-+
-+  pipewire_stream = pw_stream_new (priv->pipewire_core,
-                                    "meta-screen-cast-src",
-                                    NULL);
-   if (!pipewire_stream)
-@@ -682,17 +664,17 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-   max_framerate = SPA_FRACTION (frame_rate_fraction.num,
-                                 frame_rate_fraction.denom);
-
--  params[0] = spa_pod_builder_object (
-+  params[0] = spa_pod_builder_add_object (
-     &pod_builder,
--    pipewire_type->param.idEnumFormat, pipewire_type->spa_format,
--    "I", spa_type->media_type.video,
--    "I", spa_type->media_subtype.raw,
--    ":", spa_type->format_video.format, "I", spa_type->video_format.BGRx,
--    ":", spa_type->format_video.size, "R", &SPA_RECTANGLE (priv->stream_width,
--                                                           priv->stream_height),
--    ":", spa_type->format_video.framerate, "F", &SPA_FRACTION (0, 1),
--    ":", spa_type->format_video.max_framerate, "Fru", &max_framerate,
--                                                      PROP_RANGE (&min_framerate,
-+    SPA_TYPE_OBJECT_Format, SPA_PARAM_EnumFormat,
-+    SPA_FORMAT_mediaType, SPA_POD_Id (SPA_MEDIA_TYPE_video),
-+    SPA_FORMAT_mediaSubtype, SPA_POD_Id (SPA_MEDIA_SUBTYPE_raw),
-+    SPA_FORMAT_VIDEO_format, SPA_POD_Id (SPA_VIDEO_FORMAT_BGRx),
-+    SPA_FORMAT_VIDEO_size, SPA_POD_Rectangle (&SPA_RECTANGLE (priv->stream_width,
-+                                                              priv->stream_height)),
-+    SPA_FORMAT_VIDEO_framerate, SPA_POD_Fraction (&SPA_FRACTION (0, 1)),
-+    SPA_FORMAT_VIDEO_maxFramerate, SPA_POD_CHOICE_RANGE_Fraction (&max_framerate,
-+                                                                  &min_framerate,
-                                                                   &max_framerate));
-
-   pw_stream_add_listener (pipewire_stream,
-@@ -702,7 +684,7 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
-
-   result = pw_stream_connect (pipewire_stream,
-                               PW_DIRECTION_OUTPUT,
--                              NULL,
-+                              SPA_ID_INVALID,
-                               (PW_STREAM_FLAG_DRIVER |
-                                PW_STREAM_FLAG_MAP_BUFFERS),
-                               params, G_N_ELEMENTS (params));
-@@ -717,40 +699,18 @@ create_pipewire_stream (MetaScreenCastStreamSrc  *src,
- }
-
- static void
--on_state_changed (void                 *data,
--                  enum pw_remote_state  old,
--                  enum pw_remote_state  state,
--                  const char           *error_message)
-+on_core_error (void       *data,
-+               uint32_t    id,
-+	       int         seq,
-+	       int         res,
-+	       const char *message)
- {
-   MetaScreenCastStreamSrc *src = data;
--  MetaScreenCastStreamSrcPrivate *priv =
--    meta_screen_cast_stream_src_get_instance_private (src);
--  struct pw_stream *pipewire_stream;
--  GError *error = NULL;
-
--  switch (state)
--    {
--    case PW_REMOTE_STATE_ERROR:
--      g_warning ("pipewire remote error: %s\n", error_message);
--      meta_screen_cast_stream_src_notify_closed (src);
--      break;
--    case PW_REMOTE_STATE_CONNECTED:
--      pipewire_stream = create_pipewire_stream (src, &error);
--      if (!pipewire_stream)
--        {
--          g_warning ("Could not create pipewire stream: %s", error->message);
--          g_error_free (error);
--          meta_screen_cast_stream_src_notify_closed (src);
--        }
--      else
--        {
--          priv->pipewire_stream = pipewire_stream;
--        }
--      break;
--    case PW_REMOTE_STATE_UNCONNECTED:
--    case PW_REMOTE_STATE_CONNECTING:
--      break;
--    }
-+  g_warning ("pipewire remote error: id:%u %s", id, message);
-+
-+  if (id == PW_ID_CORE && res == -EPIPE)
-+    meta_screen_cast_stream_src_notify_closed (src);
- }
-
- static gboolean
-@@ -793,17 +753,6 @@ static GSourceFuncs pipewire_source_funcs =
-   pipewire_loop_source_finalize
- };
-
--static void
--init_spa_type (MetaSpaType         *type,
--               struct spa_type_map *map)
--{
--  spa_type_media_type_map (map, &type->media_type);
--  spa_type_media_subtype_map (map, &type->media_subtype);
--  spa_type_format_video_map (map, &type->format_video);
--  spa_type_video_format_map (map, &type->video_format);
--  type->meta_cursor = spa_type_map_get_id(map, SPA_TYPE_META__Cursor);
--}
--
- static MetaPipeWireSource *
- create_pipewire_source (void)
- {
-@@ -829,9 +778,9 @@ create_pipewire_source (void)
-   return pipewire_source;
- }
-
--static const struct pw_remote_events remote_events = {
--  PW_VERSION_REMOTE_EVENTS,
--  .state_changed = on_state_changed,
-+static const struct pw_core_events core_events = {
-+  PW_VERSION_CORE_EVENTS,
-+  .error = on_core_error,
- };
-
- static gboolean
-@@ -851,37 +800,31 @@ meta_screen_cast_stream_src_initable_init (GInitable     *initable,
-       return FALSE;
-     }
-
--  priv->pipewire_core = pw_core_new (priv->pipewire_source->pipewire_loop,
--                                     NULL);
--  if (!priv->pipewire_core)
-+  priv->pipewire_context = pw_context_new (priv->pipewire_source->pipewire_loop,
-+                                           NULL, 0);
-+  if (!priv->pipewire_context)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Failed to create pipewire core");
-+                   "Failed to create pipewire context");
-       return FALSE;
-     }
-
--  priv->pipewire_remote = pw_remote_new (priv->pipewire_core, NULL, 0);
--  if (!priv->pipewire_remote)
-+  priv->pipewire_core = pw_context_connect (priv->pipewire_context, NULL, 0);
-+  if (!priv->pipewire_core)
-     {
-       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't creat pipewire remote");
-+                   "Couldn't connect pipewire context");
-       return FALSE;
-     }
-
--  pw_remote_add_listener (priv->pipewire_remote,
--                          &priv->pipewire_remote_listener,
--                          &remote_events,
--                          src);
-+  pw_core_add_listener (priv->pipewire_core,
-+                        &priv->pipewire_core_listener,
-+                        &core_events,
-+                        src);
-
--  priv->pipewire_type = pw_core_get_type (priv->pipewire_core);
--  init_spa_type (&priv->spa_type, priv->pipewire_type->map);
--
--  if (pw_remote_connect (priv->pipewire_remote) != 0)
--    {
--      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
--                   "Couldn't connect pipewire remote");
--      return FALSE;
--    }
-+  priv->pipewire_stream = create_pipewire_stream (src, error);
-+  if (!priv->pipewire_stream)
-+    return FALSE;
-
-   return TRUE;
- }
-@@ -912,8 +855,8 @@ meta_screen_cast_stream_src_finalize (GObject *object)
-     meta_screen_cast_stream_src_disable (src);
-
-   g_clear_pointer (&priv->pipewire_stream, pw_stream_destroy);
--  g_clear_pointer (&priv->pipewire_remote, pw_remote_destroy);
--  g_clear_pointer (&priv->pipewire_core, pw_core_destroy);
-+  g_clear_pointer (&priv->pipewire_core, pw_core_disconnect);
-+  g_clear_pointer (&priv->pipewire_context, pw_context_destroy);
-   g_source_destroy (&priv->pipewire_source->base);
-
-   G_OBJECT_CLASS (meta_screen_cast_stream_src_parent_class)->finalize (object);
diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 806a3bef9f0..132cd9dd645 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -1,34 +1,35 @@
 # Template file for 'mutter'
 pkgname=mutter
-version=3.34.1
-revision=3
+version=3.36.3
+revision=1
 build_helper="gir"
 build_style=meson
 configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
- -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland"
+ -Dprofiler=false -Dintrospection=true -Dxwayland_path=/usr/bin/Xwayland
+ -Dxwayland_initfd=disabled"
 hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server"
-makedepends="elogind-devel glib-devel gnome-desktop-devel json-glib-devel
- libglib-devel libSM-devel libXtst-devel libcanberra-devel libinput-devel
- MesaLib-devel pipewire-devel startup-notification-devel wayland-protocols
- gnome-settings-daemon-devel"
+makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
+ json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
+ libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
+ wayland-protocols gnome-settings-daemon-devel"
 depends="desktop-file-utils zenity"
 short_desc="Lightweight GTK+3 window manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/Mutter/"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ba1826cf88bdb81e63943cac014a8e8bcf35ec178c53264401f9c72fdeab758e
-shlib_provides="libmutter-clutter-5.so libmutter-cogl-5.so
- libmutter-cogl-pango-5.so libmutter-cogl-path-5.so"
+checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
+shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
+ libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
 mutter-devel_package() {
-	depends="gsettings-desktop-schemas gtk+3-devel clutter-devel libX11-devel
-	 libXtst-devel mutter-${version}_${revision}"
+	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
+	 libX11-devel libXtst-devel mutter-${version}_${revision}"
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
-		vmove "usr/lib/mutter-5/*.gir"
+		vmove "usr/lib/mutter-6/*.gir"
 		vmove "usr/lib/*.so"
 	}
 }

From a3681ee4d22272e29eede1f881b03dec10b591fe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:38 +0600
Subject: [PATCH 38/68] gnome-shell: update to 3.36.3.

---
 srcpkgs/gnome-shell/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index 96c5b80a194..ee4c6288f5f 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -1,12 +1,12 @@
 # Template file for 'gnome-shell'
 pkgname=gnome-shell
-version=3.34.1
+version=3.36.3
 revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Dsystemd=false"
-hostmakedepends="gobject-introspection gtk-doc libxslt pkg-config python3 sassc
- asciidoc perl glib-devel mutter-devel"
+hostmakedepends="gettext gobject-introspection gtk-doc libxslt pkg-config python3 sassc
+ asciidoc perl gjs-devel glib-devel mutter-devel"
 makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  gcr-devel gjs-devel gnome-bluetooth-devel gnome-control-center-devel gnome-desktop-devel
  gnome-menus-devel gsettings-desktop-schemas-devel gstreamer1-devel gtk+3-devel
@@ -21,4 +21,4 @@ license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=ccd86559b9c897c219d2d2ebfdb8413efa4c1bee846427c750cb8a301b3f6d1e
+checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb

From f2c338c51cbff9c6e651189e7339e2592ea36ddc Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:46 +0600
Subject: [PATCH 39/68] gnome-shell-extensions: update to 3.36.2.

---
 srcpkgs/gnome-shell-extensions/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/gnome-shell-extensions/template b/srcpkgs/gnome-shell-extensions/template
index 97168b40f66..e1dd43bb152 100644
--- a/srcpkgs/gnome-shell-extensions/template
+++ b/srcpkgs/gnome-shell-extensions/template
@@ -1,15 +1,15 @@
 # Template file for 'gnome-shell-extensions'
 pkgname=gnome-shell-extensions
-version=3.34.1
+version=3.36.2
 revision=1
 archs=noarch
 build_style=meson
 configure_args="-Dextension_set=all"
-hostmakedepends="pkg-config"
+hostmakedepends="gettext pkg-config"
 depends="gnome-shell>=${version} nautilus unzip"
 short_desc="Extensions for GNOME shell, including classic mode"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeShell/Extensions"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=b0ad51143b1bf40def4a10f8fd0ab0ffb47218304800794e62cadd29d0acc75b
+checksum=978202de515cdb03a5885859c538366bca8fd78762ce98b172ac2c0126f8003f

From ea1e912ac845664504c37a7b3c64355951a67af8 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:48:53 +0600
Subject: [PATCH 40/68] gdm: update to 3.36.2.

---
 srcpkgs/gdm/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template
index bb5b48692d4..16bc43fd0e7 100644
--- a/srcpkgs/gdm/template
+++ b/srcpkgs/gdm/template
@@ -1,11 +1,11 @@
 # Template file for 'gdm'
 pkgname=gdm
-version=3.34.1
+version=3.36.2
 revision=1
 build_helper="gir"
 build_style=gnu-configure
 configure_args="$(vopt_enable gir introspection)
- --disable-schemas-compile --disable-static --with-default-pam-config=arch
+ --disable-static --with-default-pam-config=arch
  --with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
  --with-screenshot-dir=/var/lib/gdm/greeter --sbindir=/usr/bin --without-plymouth
  --with-xauth-dir=/run/gdm --with-pid-file=/run/gdm/gdm.pid
@@ -13,15 +13,15 @@ configure_args="$(vopt_enable gir introspection)
 hostmakedepends="dconf gettext itstool pkg-config"
 makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel
  iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel"
-depends="gnome-settings-daemon gnome-shell xorg-server xorg-server-xwayland
- xrdb"
+depends="gnome-settings-daemon gnome-shell gnome-session gnome-themes-extra
+ gsettings-desktop-schemas xorg-server xorg-server-xwayland xrdb"
 checkdepends="check-devel"
 short_desc="GNOME Display Manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GDM"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
-checksum=e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3
+checksum=3f561c10ae2e5942b03026f02c0aa7d8712e382708b17a0970874df8175b83a8
 
 conf_files="
 	/etc/gdm/custom.conf

From 879ca111d407fe0f9392cac3743054eb711bba1e Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:00 +0600
Subject: [PATCH 41/68] budgie-desktop: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/Mutter-3.35.90-support-1918.patch | 12713 ++++++++++++++++
 srcpkgs/budgie-desktop/template               |     9 +-
 2 files changed, 12718 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch

diff --git a/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
new file mode 100644
index 00000000000..bff1bad039f
--- /dev/null
+++ b/srcpkgs/budgie-desktop/patches/Mutter-3.35.90-support-1918.patch
@@ -0,0 +1,12713 @@
+From 9d09a1b15bbf66780cc89eff3c4b84e666b0bfda Mon Sep 17 00:00:00 2001
+From: David Mohammed <fossfreedom@users.noreply.github.com>
+Date: Tue, 18 Feb 2020 06:40:12 +0000
+Subject: [PATCH] Mutter 3.36 support (#1918)
+
+* Add mutter 3.35.2 support
+
+* Mutter compiler flags needs to be specified before dependency checks
+
+* Regenerate vapi for 3.35.90
+
+Origin: https://github.com/solus-project/budgie-desktop/commits/9d09a1b15b
+---
+ src/wm/meson.build                |   12 +-
+ src/wm/wm.vala                    |   16 +-
+ vapi/Clutter-6.metadata           |  204 +
+ vapi/Cogl-6.metadata              |   27 +
+ vapi/Meta-6.metadata              |   80 +
+ vapi/graphene-gobject-1.0.vapi    |  691 +++
+ vapi/libmutter-6.deps             |    6 +
+ vapi/libmutter-6.vapi             | 1475 +++++
+ vapi/mutter-clutter-6-custom.vala |  147 +
+ vapi/mutter-clutter-6.deps        |    4 +
+ vapi/mutter-clutter-6.vapi        | 8687 +++++++++++++++++++++++++++++
+ vapi/mutter-cogl-6-custom.vala    |  125 +
+ vapi/mutter-cogl-6.deps           |    1 +
+ vapi/mutter-cogl-6.vapi           | 1077 ++++
+ 14 files changed, 12549 insertions(+), 3 deletions(-)
+ create mode 100644 vapi/Clutter-6.metadata
+ create mode 100644 vapi/Cogl-6.metadata
+ create mode 100644 vapi/Meta-6.metadata
+ create mode 100644 vapi/graphene-gobject-1.0.vapi
+ create mode 100644 vapi/libmutter-6.deps
+ create mode 100644 vapi/libmutter-6.vapi
+ create mode 100644 vapi/mutter-clutter-6-custom.vala
+ create mode 100644 vapi/mutter-clutter-6.deps
+ create mode 100644 vapi/mutter-clutter-6.vapi
+ create mode 100644 vapi/mutter-cogl-6-custom.vala
+ create mode 100644 vapi/mutter-cogl-6.deps
+ create mode 100644 vapi/mutter-cogl-6.vapi
+
+diff --git a/src/wm/meson.build b/src/wm/meson.build
+index e39b8678..4bcc0f9e 100644
+--- a/src/wm/meson.build
++++ b/src/wm/meson.build
+@@ -25,11 +25,19 @@ if not dep_mutter.found()
+         message('Using new libmutter-4 ABI from GNOME 3.32')
+         vapi_mutter = 'libmutter-4'
+     else
+-        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version)
++        dep_mutter = dependency('libmutter-5', version: gnome_minimum_version, required: false)
++        budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
+         if dep_mutter.found()
+             message('Using new libmutter-5 ABI from GNOME 3.34')
+             vapi_mutter = 'libmutter-5'
+-            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_5']
++        else
++            dep_mutter = dependency('libmutter-6', version: gnome_minimum_version)
++            budgie_wm_status_vala_args += ['-D', 'HAVE_MUTTER_6']
++            if dep_mutter.found()
++                dep_graphene = dependency('graphene-gobject-1.0', version: '>= 1.10')
++                message('Using new libmutter-6 ABI from GNOME 3.36')
++                vapi_mutter = 'libmutter-6'
++            endif
+         endif
+     endif
+ endif
+diff --git a/src/wm/wm.vala b/src/wm/wm.vala
+index fee89443..bb46cd06 100644
+--- a/src/wm/wm.vala
++++ b/src/wm/wm.vala
+@@ -137,8 +137,13 @@ public class BudgieWM : Meta.Plugin
+     public static string[]? old_args;
+     public static bool wayland = false;
+ 
++#if HAVE_MUTTER_6
++    static Graphene.Point PV_CENTER;
++    static Graphene.Point PV_NORM;
++#else
+     static Clutter.Point PV_CENTER;
+     static Clutter.Point PV_NORM;
++#endif
+ 
+     private Meta.BackgroundGroup? background_group;
+ 
+@@ -171,10 +176,15 @@ public class BudgieWM : Meta.Plugin
+             license = "GPL-2.0",
+             description = "Budgie Window Manager"
+         };
++#if HAVE_MUTTER_6
++        PV_CENTER = Graphene.Point();
++        PV_NORM = Graphene.Point();
++#else
+         PV_CENTER = Clutter.Point.alloc();
++        PV_NORM = Clutter.Point.alloc();
++#endif
+         PV_CENTER.x = 0.5f;
+         PV_CENTER.y = 0.5f;
+-        PV_NORM = Clutter.Point.alloc();
+         PV_NORM.x = 0.0f;
+         PV_NORM.y = 0.0f;
+     }
+@@ -1001,7 +1011,11 @@ public class BudgieWM : Meta.Plugin
+         tile_preview.set("scale-x", NOTIFICATION_MAP_SCALE_X, "scale-y", NOTIFICATION_MAP_SCALE_Y,
+             "pivot-point", PV_CENTER);
+ 
++#if HAVE_MUTTER_6
++        //tile_preview.lower(win_actor);
++#else
+         tile_preview.lower(win_actor);
++#endif
+         tile_preview.tile_rect = tile_rect;
+ 
+         tile_preview.show();
+diff --git a/vapi/Clutter-6.metadata b/vapi/Clutter-6.metadata
+new file mode 100644
+index 00000000..8c26a122
+--- /dev/null
++++ b/vapi/Clutter-6.metadata
+@@ -0,0 +1,204 @@
++// Non mini-object
++ActorBox struct
++Color struct
++Fog struct
++Geometry struct
++Knot struct
++PathNode struct
++Perspective struct
++Units struct
++Vertex struct
++
++*.ref unowned
++
++init.argv unowned
++init_with_args
++	.argv unowned
++Actor
++	.apply_transform.matrix ref
++	.get_abs_allocation_vertices.verts out=false
++	.get_allocation_vertices.verts out=false
++Canvas
++	.new symbol_type="constructor"
++Event.type#method name="get_type"
++Image
++	.new symbol_type="constructor"
++
++// ???
++Actor.has_pointer#method name="get_has_pointer"
++InitError errordomain=false
++
++// Not all backing symbols are deprecated
++Actor.pick deprecated=false
++
++// Nullable return values
++Actor
++	.get_parent nullable
++value_get_color nullable
++
++// method/virtual-method/signal don't match
++Actor
++	.event#method name="emit_event"
++	.get_paint_volume#method skip
++	.queue_redraw#signal skip
++	.queue_redraw#virtual_method skip
++Container
++	.add_actor skip=false
++Text
++	.activate#method name="try_activate"
++	.insert_text#signal skip
++TextBuffer.get_text#virtual_method name="get_text_with_length"
++
++// virtual/abstract distinction
++Container
++	.lower virtual
++	.raise virtual
++	.*_child_meta#virtual_method virtual
++	.foreach_with_internals#virtual_method virtual
++
++// Default values
++Container
++	.lower.sibling nullable default=null
++	.raise.sibling nullable default=null
++Stage.read_pixels
++	.width default=-1
++	.height default=-1
++Text
++	.position_to_coords.line_height default=null
++
++// Reparented funcs methods can't be instance methods
++feature_available skip
++feature_get_all skip
++
++// Skipped by g-i for unknown reasons
++LayoutManager
++	.create_child_meta skip=false
++
++// Variadic arguments
++Actor
++	.animate skip=false
++	.animate_with_alpha skip=false
++	.animate_with_timeline skip=false
++Box
++	.pack skip=false
++	.pack_after skip=false
++	.pack_at skip=false
++	.pack_before skip=false
++Container
++	.add_valist skip=false
++	.child_get skip=false
++	.child_set skip=false
++	.remove skip=false
++	.remove_valist skip=false
++Interval
++	.new skip=false
++	.get_interval skip=false
++	.set_final skip=false
++	.set_initial skip=false
++	.set_interval skip=false
++LayoutManager
++	.child_get skip=false
++	.child_set skip=false
++Script
++	.get_objects skip=false
++
++// Changing error domains
++Texture
++	.new_from_file throws="Clutter.TextureError"
++
++// Skipped upstream for unknown reasons
++Alpha.register_func skip=false
++Interval.register_progress_func skip=false
++get_option_group skip=false
++get_option_group_without_init skip=false
++threads_add_idle skip=false
++threads_add_idle_full skip=false
++threads_add_timeout skip=false
++threads_add_timeout_full skip=false
++
++// struct/class confusion
++ActorBox
++	.new skip
++	.from_vertices skip
++Units.from_* skip
++Color
++	.new skip
++Vertex.new skip
++
++// Class methods
++container_class_find_child_property skip
++container_class_list_child_properties skip
++
++// Move symbols
++get_actor_by_gid parent="Clutter.Actor" name="get_by_gid"
++units_from_* skip
++
++// Classes marked as out but not double ptr
++Actor
++	.get_margin.margin out=false
++DragAction
++	.get_drag_area.drag_area out=false
++InputDevice
++	.get_coords.point out=false
++Rect
++	.get_center.center out=false
++	.intersection.res out=false
++	.union.res out=false
++Timeline
++	.get_cubic_bezier_progress.c_* out=false
++ZoomAction
++	.get_focal_point.point out=false
++	.get_transformed_focal_point.point out=false
++
++// Struct return values
++color_get_static nullable
++
++// Remove for clutter-2.0
++/////////////////////////
++
++Stage
++ 	.event name="emit_event"
++
++// *Event should be compact classes derived from Clutter.Event
++Event.type skip=false
++AnyEvent struct=false base_type="Clutter.Event"
++ButtonEvent struct=false base_type="Clutter.Event"
++CrossingEvent struct=false base_type="Clutter.Event"
++KeyEvent struct=false base_type="Clutter.Event"
++MotionEvent struct=false base_type="Clutter.Event"
++ScrollEvent struct=false base_type="Clutter.Event"
++StageStateEvent struct=false base_type="Clutter.Event"
++TouchEvent struct=false base_type="Clutter.Event"
++TouchpadPinchEvent struct=false base_type="Clutter.Event"
++TouchpadSwipeEvent struct=false base_type="Clutter.Event"
++
++// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
++*#constant skip
++COGL skip=false
++CURRENT_TIME skip=false
++FLAVOUR skip=false
++PATH_RELATIVE skip=false
++PRIORITY_REDRAW skip=false
++
++// Clutter devs don't like us creating nested namespaces
++value_* name="value_(.+)" parent="Clutter.Value"
++threads_* name="threads_(.+)" parent="Clutter.Threads"
++threads_add_idle name="add" parent="Clutter.Threads.Idle"
++threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
++threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
++threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
++
++// Backwards compatibility
++Color.alloc symbol_type="function"
++Point.alloc symbol_type="function"
++Rect.alloc symbol_type="function"
++Size.alloc symbol_type="function"
++Vertex.alloc symbol_type="function"
++
++BinAlignment deprecated=false deprecated_since=null
++BinAlignment.* deprecated
++BinAlignment.start deprecated=false
++BinLayout.new.*_align default=Clutter.BinAlignment.START
++
++// Possibly keep
++KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
+diff --git a/vapi/Cogl-6.metadata b/vapi/Cogl-6.metadata
+new file mode 100644
+index 00000000..092b5e29
+--- /dev/null
++++ b/vapi/Cogl-6.metadata
+@@ -0,0 +1,27 @@
++Cogl cheader_filename="cogl/cogl.h"
++
++Color struct
++  .new skip
++  .free skip
++
++create_program skip
++create_shader skip
++
++
++is_bitmap skip
++is_material skip
++is_offscreen skip
++is_program skip
++is_shader skip
++is_texture skip
++is_vertex_buffer skip
++
++Matrix struct
++  .get_array array=true array_length_idx=-1
++  .get_inverse.inverse out=true
++  .multiply skip
++  .init_from_array skip
++  .init_identity skip
++  .transform_point.* ref=true
++
++program_* skip
+diff --git a/vapi/Meta-6.metadata b/vapi/Meta-6.metadata
+new file mode 100644
+index 00000000..1d984778
+--- /dev/null
++++ b/vapi/Meta-6.metadata
+@@ -0,0 +1,80 @@
++Backend cheader_filename="meta/meta-backend.h"
++Background cheader_filename="meta/meta-background.h"
++BackgroundActor cheader_filename="meta/meta-background-actor.h"
++BackgroundGroup cheader_filename="meta/meta-background-group.h"
++BackgroundImage cheader_filename="meta/meta-background-image.h"
++BackgroundImageCache cheader_filename="meta/meta-background-image.h"
++Barrier cheader_filename="meta/barrier.h"
++BarrierEvent cheader_filename="meta/barrier.h"
++CloseDialog cheader_filename="meta/meta-close-dialog.h"
++CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
++Display cheader_filename="meta/display.h"
++Dnd cheader_filename="meta/meta-dnd.h"
++IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
++LaunchContext cheader_filename="meta/meta-launch-context.h"
++Meta cheader_filename="meta/main.h"
++MonitorManager cheader_filename="meta/meta-monitor-manager.h"
++Preference cheader_filename="meta/prefs.h"
++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
++Settings cheader_filename="meta/meta-settings.h"
++ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
++ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
++SoundPlayer cheader_filename="meta/meta-sound-player.h"
++Stage cheader_filename="meta/meta-stage.h"
++StartupNotification cheader_filename="meta/meta-startup-notification.h"
++Theme cheader_filename="meta/theme.h"
++Window cheader_filename="meta/window.h"
++WindowActor cheader_filename="meta/meta-window-actor.h"
++WindowGroup cheader_filename="meta/meta-window-group.h"
++WindowShape cheader_filename="meta/meta-window-shape.h"
++Workspace cheader_filename="meta/workspace.h"
++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
++X11Display cheader_filename="meta/meta-x11-display.h"
++Rectangle struct
++Plugin cheader_filename="meta/meta-plugin.h"
++PluginInfo cheader_filename="meta/meta-plugin.h"
++prefs_* cheader_filename="meta/prefs.h" parent="Meta.Prefs"
++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_push parent="Meta.Util" cheader_filename="meta/util.h"
++x11_error_trap_pop_with_return parent="Meta.Util" cheader_filename="meta/util.h"
++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
++gravity_to_string parent="Meta.Util" cheader_filename="meta/util.h"
++is_debugging parent="Meta.Util" cheader_filename="meta/util.h"
++is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
++is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
++is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
++later_add parent="Meta.Util" cheader_filename="meta/util.h"
++later_remove parent="Meta.Util" cheader_filename="meta/util.h"
++pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
++rect parent="Meta.Util" cheader_filename="meta/util.h"
++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_equal parent="Meta.Util" cheader_filename="meta/util.h"
++unsigned_long_hash parent="Meta.Util" cheader_filename="meta/util.h"
++show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
++get_stage_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_actors parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_top_window_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++get_feedback_group_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++disable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++enable_unredirect_for_display parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++set_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++empty_stage_input_region parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++focus_stage_window parent="Meta.Compositor" cheader_filename="meta/compositor-mutter.h"
++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler"
++KeyHandlerFunc.event type="Clutter.KeyEvent?"
++get_backend parent="Meta.Backend"
++Window.focus#signal skip=true
++Window.get_xwindow skip=false
++get_option_context skip=false
++set_gnome_wm_keybindings skip=false
++set_wm_name skip=false
++init skip=false
++run skip=false
++show_dialog skip=false
++get_backend cheader_filename="meta/meta-backend.h"
+diff --git a/vapi/graphene-gobject-1.0.vapi b/vapi/graphene-gobject-1.0.vapi
+new file mode 100644
+index 00000000..69801535
+--- /dev/null
++++ b/vapi/graphene-gobject-1.0.vapi
+@@ -0,0 +1,691 @@
++/* graphene-gobject-1.0.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Graphene", gir_namespace = "Graphene", gir_version = "1.0", lower_case_cprefix = "graphene_")]
++namespace Graphene {
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_box_t", type_id = "graphene_box_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Box {
++		public bool contains_box (Graphene.Box b);
++		public bool contains_point (Graphene.Point3D point);
++		public static unowned Graphene.Box? empty ();
++		public bool equal (Graphene.Box b);
++		public Graphene.Box expand (Graphene.Point3D point);
++		public Graphene.Box expand_scalar (float scalar);
++		public Graphene.Box expand_vec3 (Graphene.Vec3 vec);
++		public Graphene.Sphere get_bounding_sphere ();
++		public Graphene.Point3D get_center ();
++		public float get_depth ();
++		public float get_height ();
++		public Graphene.Point3D get_max ();
++		public Graphene.Point3D get_min ();
++		public Graphene.Vec3 get_size ();
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec3 vertices[8]);
++		public float get_width ();
++		public static unowned Graphene.Box? infinite ();
++		public unowned Graphene.Box? init (Graphene.Point3D? min, Graphene.Point3D? max);
++		public unowned Graphene.Box? init_from_box (Graphene.Box src);
++		public unowned Graphene.Box? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points);
++		public unowned Graphene.Box? init_from_vec3 (Graphene.Vec3? min, Graphene.Vec3? max);
++		public unowned Graphene.Box? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors);
++		public bool intersection (Graphene.Box b, out Graphene.Box res);
++		public static unowned Graphene.Box? minus_one ();
++		public static unowned Graphene.Box? one ();
++		public static unowned Graphene.Box? one_minus_one ();
++		public Graphene.Box union (Graphene.Box b);
++		public static unowned Graphene.Box? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_t", type_id = "graphene_euler_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Euler {
++		public bool equal (Graphene.Euler b);
++		[Version (since = "1.10")]
++		public float get_alpha ();
++		[Version (since = "1.10")]
++		public float get_beta ();
++		[Version (since = "1.10")]
++		public float get_gamma ();
++		public Graphene.EulerOrder get_order ();
++		public float get_x ();
++		public float get_y ();
++		public float get_z ();
++		public unowned Graphene.Euler? init (float x, float y, float z);
++		public unowned Graphene.Euler? init_from_euler (Graphene.Euler? src);
++		public unowned Graphene.Euler? init_from_matrix (Graphene.Matrix? m, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_quaternion (Graphene.Quaternion? q, Graphene.EulerOrder order);
++		[Version (since = "1.10")]
++		public unowned Graphene.Euler? init_from_radians (float x, float y, float z, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_from_vec3 (Graphene.Vec3? v, Graphene.EulerOrder order);
++		public unowned Graphene.Euler? init_with_order (float x, float y, float z, Graphene.EulerOrder order);
++		public Graphene.Euler reorder (Graphene.EulerOrder order);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion to_quaternion ();
++		public Graphene.Vec3 to_vec3 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_frustum_t", type_id = "graphene_frustum_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Frustum {
++		public bool contains_point (Graphene.Point3D point);
++		[Version (since = "1.6")]
++		public bool equal (Graphene.Frustum b);
++		public void get_planes ([CCode (array_length = false)] ref Graphene.Plane planes[6]);
++		public unowned Graphene.Frustum? init (Graphene.Plane p0, Graphene.Plane p1, Graphene.Plane p2, Graphene.Plane p3, Graphene.Plane p4, Graphene.Plane p5);
++		public unowned Graphene.Frustum? init_from_frustum (Graphene.Frustum src);
++		public unowned Graphene.Frustum? init_from_matrix (Graphene.Matrix matrix);
++		public bool intersects_box (Graphene.Box box);
++		public bool intersects_sphere (Graphene.Sphere sphere);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_matrix_t", type_id = "graphene_matrix_get_type ()")]
++	public struct Matrix {
++		public bool decompose (out Graphene.Vec3 translate, out Graphene.Vec3 scale, out Graphene.Quaternion rotate, out Graphene.Vec3 shear, out Graphene.Vec4 perspective);
++		[Version (since = "1.0")]
++		public float determinant ();
++		[Version (since = "1.10")]
++		public bool equal (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool equal_fast (Graphene.Matrix b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_row (uint index_);
++		[Version (since = "1.0")]
++		public float get_value (uint row, uint col);
++		[Version (since = "1.0")]
++		public float get_x_scale ();
++		[Version (since = "1.10")]
++		public float get_x_translation ();
++		[Version (since = "1.0")]
++		public float get_y_scale ();
++		[Version (since = "1.10")]
++		public float get_y_translation ();
++		[Version (since = "1.0")]
++		public float get_z_scale ();
++		[Version (since = "1.10")]
++		public float get_z_translation ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_2d (double xx, double yx, double xy, double yy, double x_0, double y_0);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_float ([CCode (array_length = false)] float v[16]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_matrix (Graphene.Matrix src);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_from_vec4 (Graphene.Vec4 v0, Graphene.Vec4 v1, Graphene.Vec4 v2, Graphene.Vec4 v3);
++		[Version (since = "1.2")]
++		public unowned Graphene.Matrix? init_frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_identity ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_look_at (Graphene.Vec3 eye, Graphene.Vec3 center, Graphene.Vec3 up);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_ortho (float left, float right, float top, float bottom, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_perspective (float fovy, float aspect, float z_near, float z_far);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_scale (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_skew (float x_skew, float y_skew);
++		[Version (since = "1.0")]
++		public unowned Graphene.Matrix? init_translate (Graphene.Point3D p);
++		[Version (since = "1.0")]
++		public Graphene.Matrix interpolate (Graphene.Matrix b, double factor);
++		[Version (since = "1.0")]
++		public bool inverse (out Graphene.Matrix res);
++		[Version (since = "1.0")]
++		public bool is_2d ();
++		[Version (since = "1.0")]
++		public bool is_backface_visible ();
++		[Version (since = "1.0")]
++		public bool is_identity ();
++		[Version (since = "1.0")]
++		public bool is_singular ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix multiply (Graphene.Matrix b);
++		[Version (since = "1.10")]
++		public bool near (Graphene.Matrix b, float epsilon);
++		[Version (since = "1.0")]
++		public Graphene.Matrix normalize ();
++		[Version (since = "1.0")]
++		public Graphene.Matrix perspective (float depth);
++		[Version (since = "1.0")]
++		public void print ();
++		[Version (since = "1.0")]
++		public Graphene.Point project_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Quad project_rect (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public Graphene.Rect project_rect_bounds (Graphene.Rect r);
++		[Version (since = "1.0")]
++		public void rotate (float angle, Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void rotate_euler (Graphene.Euler e);
++		[Version (since = "1.2")]
++		public void rotate_quaternion (Graphene.Quaternion q);
++		[Version (since = "1.0")]
++		public void rotate_x (float angle);
++		[Version (since = "1.0")]
++		public void rotate_y (float angle);
++		[Version (since = "1.0")]
++		public void rotate_z (float angle);
++		[Version (since = "1.0")]
++		public void scale (float factor_x, float factor_y, float factor_z);
++		[Version (since = "1.0")]
++		public void skew_xy (float factor);
++		[Version (since = "1.0")]
++		public void skew_xz (float factor);
++		[Version (since = "1.0")]
++		public void skew_yz (float factor);
++		[Version (since = "1.0")]
++		public bool to_2d (out double xx, out double yx, out double xy, out double yy, out double x_0, out double y_0);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float v[16]);
++		[Version (since = "1.0")]
++		public Graphene.Rect transform_bounds (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Box transform_box (Graphene.Box b);
++		[Version (since = "1.0")]
++		public Graphene.Point transform_point (Graphene.Point p);
++		[Version (since = "1.2")]
++		public Graphene.Point3D transform_point3d (Graphene.Point3D p);
++		[Version (since = "1.4")]
++		public Graphene.Ray transform_ray (Graphene.Ray r);
++		[Version (since = "1.0")]
++		public Graphene.Quad transform_rect (Graphene.Rect r);
++		[Version (since = "1.2")]
++		public Graphene.Sphere transform_sphere (Graphene.Sphere s);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 transform_vec3 (Graphene.Vec3 v);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 transform_vec4 (Graphene.Vec4 v);
++		[Version (since = "1.0")]
++		public void translate (Graphene.Point3D pos);
++		[Version (since = "1.0")]
++		public Graphene.Matrix transpose ();
++		[Version (since = "1.2")]
++		public Graphene.Point3D unproject_point3d (Graphene.Matrix modelview, Graphene.Point3D point);
++		[Version (since = "1.0")]
++		public Graphene.Rect untransform_bounds (Graphene.Rect r, Graphene.Rect bounds);
++		[Version (since = "1.0")]
++		public bool untransform_point (Graphene.Point p, Graphene.Rect bounds, out Graphene.Point res);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_plane_t", type_id = "graphene_plane_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Plane {
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Plane b);
++		public float get_constant ();
++		public Graphene.Vec3 get_normal ();
++		public unowned Graphene.Plane? init (Graphene.Vec3? normal, float constant);
++		public unowned Graphene.Plane? init_from_plane (Graphene.Plane src);
++		public unowned Graphene.Plane? init_from_point (Graphene.Vec3 normal, Graphene.Point3D point);
++		public unowned Graphene.Plane? init_from_points (Graphene.Point3D a, Graphene.Point3D b, Graphene.Point3D c);
++		public unowned Graphene.Plane? init_from_vec4 (Graphene.Vec4 src);
++		public Graphene.Plane negate ();
++		public Graphene.Plane normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Plane transform (Graphene.Matrix matrix, Graphene.Matrix? normal_matrix);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point_t", type_id = "graphene_point_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point {
++		public float x;
++		public float y;
++		public float distance (Graphene.Point b, out float d_x, out float d_y);
++		public bool equal (Graphene.Point b);
++		public unowned Graphene.Point? init (float x, float y);
++		public unowned Graphene.Point? init_from_point (Graphene.Point src);
++		[Version (since = "1.4")]
++		public unowned Graphene.Point? init_from_vec2 (Graphene.Vec2 src);
++		public Graphene.Point interpolate (Graphene.Point b, double factor);
++		public bool near (Graphene.Point b, float epsilon);
++		[Version (since = "1.4")]
++		public Graphene.Vec2 to_vec2 ();
++		public static unowned Graphene.Point? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_point3d_t", lower_case_csuffix = "point3d", type_id = "graphene_point3d_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Point3D {
++		public float x;
++		public float y;
++		public float z;
++		public Graphene.Point3D cross (Graphene.Point3D b);
++		[Version (since = "1.4")]
++		public float distance (Graphene.Point3D b, out Graphene.Vec3 delta);
++		public float dot (Graphene.Point3D b);
++		public bool equal (Graphene.Point3D b);
++		public unowned Graphene.Point3D? init (float x, float y, float z);
++		public unowned Graphene.Point3D? init_from_point (Graphene.Point3D src);
++		public unowned Graphene.Point3D? init_from_vec3 (Graphene.Vec3 v);
++		public Graphene.Point3D interpolate (Graphene.Point3D b, double factor);
++		public float length ();
++		public bool near (Graphene.Point3D b, float epsilon);
++		public Graphene.Point3D normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Point3D normalize_viewport (Graphene.Rect viewport, float z_near, float z_far);
++		public Graphene.Point3D scale (float factor);
++		public Graphene.Vec3 to_vec3 ();
++		public static unowned Graphene.Point3D? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quad_t", type_id = "graphene_quad_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quad {
++		public Graphene.Rect bounds ();
++		public bool contains (Graphene.Point p);
++		public unowned Graphene.Point? get_point (uint index_);
++		public unowned Graphene.Quad? init (Graphene.Point p1, Graphene.Point p2, Graphene.Point p3, Graphene.Point p4);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quad? init_from_points ([CCode (array_length = false)] Graphene.Point points[4]);
++		public unowned Graphene.Quad? init_from_rect (Graphene.Rect r);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_quaternion_t", type_id = "graphene_quaternion_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Quaternion {
++		[Version (since = "1.10")]
++		public Graphene.Quaternion add (Graphene.Quaternion b);
++		public float dot (Graphene.Quaternion b);
++		public bool equal (Graphene.Quaternion b);
++		public unowned Graphene.Quaternion? init (float x, float y, float z, float w);
++		public unowned Graphene.Quaternion? init_from_angle_vec3 (float angle, Graphene.Vec3 axis);
++		public unowned Graphene.Quaternion? init_from_angles (float deg_x, float deg_y, float deg_z);
++		[Version (since = "1.2")]
++		public unowned Graphene.Quaternion? init_from_euler (Graphene.Euler e);
++		public unowned Graphene.Quaternion? init_from_matrix (Graphene.Matrix m);
++		public unowned Graphene.Quaternion? init_from_quaternion (Graphene.Quaternion src);
++		public unowned Graphene.Quaternion? init_from_radians (float rad_x, float rad_y, float rad_z);
++		public unowned Graphene.Quaternion? init_from_vec4 (Graphene.Vec4 src);
++		public unowned Graphene.Quaternion? init_identity ();
++		public Graphene.Quaternion invert ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion multiply (Graphene.Quaternion b);
++		public Graphene.Quaternion normalize ();
++		[Version (since = "1.10")]
++		public Graphene.Quaternion scale (float factor);
++		public Graphene.Quaternion slerp (Graphene.Quaternion b, float factor);
++		public void to_angle_vec3 (out float angle, out Graphene.Vec3 axis);
++		[Version (since = "1.2")]
++		public void to_angles (out float deg_x, out float deg_y, out float deg_z);
++		public Graphene.Matrix to_matrix ();
++		[Version (since = "1.2")]
++		public void to_radians (out float rad_x, out float rad_y, out float rad_z);
++		public Graphene.Vec4 to_vec4 ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_t", type_id = "graphene_ray_get_type ()")]
++	[Version (since = "1.4")]
++	public struct Ray {
++		public bool equal (Graphene.Ray b);
++		public Graphene.Point3D get_closest_point_to_point (Graphene.Point3D p);
++		public Graphene.Vec3 get_direction ();
++		public float get_distance_to_plane (Graphene.Plane p);
++		public float get_distance_to_point (Graphene.Point3D p);
++		public Graphene.Point3D get_origin ();
++		public Graphene.Point3D get_position_at (float t);
++		public unowned Graphene.Ray? init (Graphene.Point3D? origin, Graphene.Vec3? direction);
++		public unowned Graphene.Ray? init_from_ray (Graphene.Ray src);
++		public unowned Graphene.Ray? init_from_vec3 (Graphene.Vec3? origin, Graphene.Vec3? direction);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_box (Graphene.Box b, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_sphere (Graphene.Sphere s, out float t_out);
++		[Version (since = "1.10")]
++		public Graphene.RayIntersectionKind intersect_triangle (Graphene.Triangle t, out float t_out);
++		[Version (since = "1.10")]
++		public bool intersects_box (Graphene.Box b);
++		[Version (since = "1.10")]
++		public bool intersects_sphere (Graphene.Sphere s);
++		[Version (since = "1.10")]
++		public bool intersects_triangle (Graphene.Triangle t);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_rect_t", type_id = "graphene_rect_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Rect {
++		public Graphene.Point origin;
++		public Graphene.Size size;
++		public static Graphene.Rect? alloc ();
++		public bool contains_point (Graphene.Point p);
++		public bool contains_rect (Graphene.Rect b);
++		public bool equal (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public Graphene.Rect expand (Graphene.Point p);
++		[Version (since = "1.10")]
++		public float get_area ();
++		public Graphene.Point get_bottom_left ();
++		public Graphene.Point get_bottom_right ();
++		public Graphene.Point get_center ();
++		public float get_height ();
++		public Graphene.Point get_top_left ();
++		public Graphene.Point get_top_right ();
++		[Version (since = "1.4")]
++		public void get_vertices ([CCode (array_length = false)] ref Graphene.Vec2 vertices[4]);
++		public float get_width ();
++		public float get_x ();
++		public float get_y ();
++		public unowned Graphene.Rect? init (float x, float y, float width, float height);
++		public unowned Graphene.Rect? init_from_rect (Graphene.Rect src);
++		public unowned Graphene.Rect? inset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect inset_r (float d_x, float d_y);
++		public Graphene.Rect interpolate (Graphene.Rect b, double factor);
++		public bool intersection (Graphene.Rect b, out Graphene.Rect res);
++		public unowned Graphene.Rect? normalize ();
++		[Version (since = "1.4")]
++		public Graphene.Rect normalize_r ();
++		public unowned Graphene.Rect? offset (float d_x, float d_y);
++		[Version (since = "1.4")]
++		public Graphene.Rect offset_r (float d_x, float d_y);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Graphene.Rect round ();
++		[Version (since = "1.10")]
++		public Graphene.Rect round_extents ();
++		[Version (deprecated = true, deprecated_since = "1.4", since = "1.0")]
++		public unowned Graphene.Rect? round_to_pixel ();
++		[Version (since = "1.10")]
++		public Graphene.Rect scale (float s_h, float s_v);
++		public Graphene.Rect union (Graphene.Rect b);
++		[Version (since = "1.4")]
++		public static unowned Graphene.Rect? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4f_t", has_type_id = false)]
++	public struct Simd4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_simd4x4f_t", has_type_id = false)]
++	public struct Simd4X4F {
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_size_t", type_id = "graphene_size_get_type ()")]
++	[Version (since = "1.0")]
++	public struct Size {
++		public float width;
++		public float height;
++		public bool equal (Graphene.Size b);
++		public unowned Graphene.Size? init (float width, float height);
++		public unowned Graphene.Size? init_from_size (Graphene.Size src);
++		public Graphene.Size interpolate (Graphene.Size b, double factor);
++		public Graphene.Size scale (float factor);
++		public static unowned Graphene.Size? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_sphere_t", type_id = "graphene_sphere_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Sphere {
++		public bool contains_point (Graphene.Point3D point);
++		public float distance (Graphene.Point3D point);
++		public bool equal (Graphene.Sphere b);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_center ();
++		public float get_radius ();
++		public unowned Graphene.Sphere? init (Graphene.Point3D? center, float radius);
++		public unowned Graphene.Sphere? init_from_points ([CCode (array_length_cname = "n_points", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Point3D[] points, Graphene.Point3D? center);
++		public unowned Graphene.Sphere? init_from_vectors ([CCode (array_length_cname = "n_vectors", array_length_pos = 0.5, array_length_type = "guint")] Graphene.Vec3[] vectors, Graphene.Point3D? center);
++		public bool is_empty ();
++		public Graphene.Sphere translate (Graphene.Point3D point);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_triangle_t", type_id = "graphene_triangle_get_type ()")]
++	[Version (since = "1.2")]
++	public struct Triangle {
++		public bool contains_point (Graphene.Point3D p);
++		public bool equal (Graphene.Triangle b);
++		public float get_area ();
++		public bool get_barycoords (Graphene.Point3D? p, out Graphene.Vec2 res);
++		public Graphene.Box get_bounding_box ();
++		public Graphene.Point3D get_midpoint ();
++		public Graphene.Vec3 get_normal ();
++		public Graphene.Plane get_plane ();
++		public void get_points (out Graphene.Point3D a, out Graphene.Point3D b, out Graphene.Point3D c);
++		[Version (since = "1.10")]
++		public bool get_uv (Graphene.Point3D? p, Graphene.Vec2 uv_a, Graphene.Vec2 uv_b, Graphene.Vec2 uv_c, out Graphene.Vec2 res);
++		public void get_vertices (out Graphene.Vec3 a, out Graphene.Vec3 b, out Graphene.Vec3 c);
++		[Version (since = "1.10")]
++		public unowned Graphene.Triangle? init_from_float ([CCode (array_length = false)] float a[3], [CCode (array_length = false)] float b[3], [CCode (array_length = false)] float c[3]);
++		public unowned Graphene.Triangle? init_from_point3d (Graphene.Point3D? a, Graphene.Point3D? b, Graphene.Point3D? c);
++		public unowned Graphene.Triangle? init_from_vec3 (Graphene.Vec3? a, Graphene.Vec3? b, Graphene.Vec3? c);
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec2_t", type_id = "graphene_vec2_get_type ()")]
++	public struct Vec2 {
++		[Version (since = "1.0")]
++		public Graphene.Vec2 add (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 divide (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec2 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init (float x, float y);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_float ([CCode (array_length = false)] float src[2]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec2? init_from_vec2 (Graphene.Vec2 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec2 interpolate (Graphene.Vec2 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 max (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 min (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 multiply (Graphene.Vec2 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec2 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec2 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec2 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec2 subtract (Graphene.Vec2 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[2]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec2? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec3_t", type_id = "graphene_vec3_get_type ()")]
++	public struct Vec3 {
++		[Version (since = "1.0")]
++		public Graphene.Vec3 add (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 cross (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 divide (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec3 v2);
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xy0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz0 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyz1 ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 get_xyzw (float w);
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init (float x, float y, float z);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_float ([CCode (array_length = false)] float src[3]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec3? init_from_vec3 (Graphene.Vec3 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec3 interpolate (Graphene.Vec3 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 max (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 min (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 multiply (Graphene.Vec3 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec3 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec3 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec3 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec3 subtract (Graphene.Vec3 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[3]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec3? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_vec4_t", type_id = "graphene_vec4_get_type ()")]
++	public struct Vec4 {
++		[Version (since = "1.0")]
++		public Graphene.Vec4 add (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 divide (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public float dot (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool equal (Graphene.Vec4 v2);
++		[Version (since = "1.0")]
++		public float get_w ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public Graphene.Vec2 get_xy ();
++		[Version (since = "1.0")]
++		public Graphene.Vec3 get_xyz ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.0")]
++		public float get_z ();
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init (float x, float y, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_float ([CCode (array_length = false)] float src[4]);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec2 (Graphene.Vec2 src, float z, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec3 (Graphene.Vec3 src, float w);
++		[Version (since = "1.0")]
++		public unowned Graphene.Vec4? init_from_vec4 (Graphene.Vec4 src);
++		[Version (since = "1.10")]
++		public Graphene.Vec4 interpolate (Graphene.Vec4 v2, double factor);
++		[Version (since = "1.0")]
++		public float length ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 max (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 min (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 multiply (Graphene.Vec4 b);
++		[Version (since = "1.2")]
++		public bool near (Graphene.Vec4 v2, float epsilon);
++		[Version (since = "1.2")]
++		public Graphene.Vec4 negate ();
++		[Version (since = "1.0")]
++		public Graphene.Vec4 normalize ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? one ();
++		[Version (since = "1.2")]
++		public Graphene.Vec4 scale (float factor);
++		[Version (since = "1.0")]
++		public Graphene.Vec4 subtract (Graphene.Vec4 b);
++		[Version (since = "1.0")]
++		public void to_float ([CCode (array_length = false)] ref float dest[4]);
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? w_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? x_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? y_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? z_axis ();
++		[Version (since = "1.0")]
++		public static unowned Graphene.Vec4? zero ();
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_euler_order_t", cprefix = "GRAPHENE_EULER_ORDER_", has_type_id = false)]
++	[Version (since = "1.2")]
++	public enum EulerOrder {
++		DEFAULT,
++		XYZ,
++		YZX,
++		ZXY,
++		XZY,
++		YXZ,
++		ZYX,
++		SXYZ,
++		SXYX,
++		SXZY,
++		SXZX,
++		SYZX,
++		SYZY,
++		SYXZ,
++		SYXY,
++		SZXY,
++		SZXZ,
++		SZYX,
++		SZYZ,
++		RZYX,
++		RXYX,
++		RYZX,
++		RXZX,
++		RXZY,
++		RYZY,
++		RZXY,
++		RYXY,
++		RYXZ,
++		RZXZ,
++		RXYZ,
++		RZYZ
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "graphene_ray_intersection_kind_t", cprefix = "GRAPHENE_RAY_INTERSECTION_KIND_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum RayIntersectionKind {
++		NONE,
++		ENTER,
++		LEAVE
++	}
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_GCC")]
++	public const int HAS_GCC;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SCALAR")]
++	public const int HAS_SCALAR;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_HAS_SSE")]
++	public const int HAS_SSE;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI")]
++	public const double PI;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_PI_2")]
++	public const double PI_2;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_SIMD_S")]
++	public const string SIMD_S;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC2_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC2_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC3_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC3_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "GRAPHENE_VEC4_LEN")]
++	[Version (since = "1.0")]
++	public const int VEC4_LEN;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "false")]
++	public const int @false;
++	[CCode (cheader_filename = "graphene-gobject.h", cname = "true")]
++	public const int @true;
++}
+diff --git a/vapi/libmutter-6.deps b/vapi/libmutter-6.deps
+new file mode 100644
+index 00000000..223525e4
+--- /dev/null
++++ b/vapi/libmutter-6.deps
+@@ -0,0 +1,6 @@
++gtk+-3.0
++json-glib-1.0
++mutter-clutter-6
++x11
++xfixes-4.0
++graphene-gobject-1.0
+diff --git a/vapi/libmutter-6.vapi b/vapi/libmutter-6.vapi
+new file mode 100644
+index 00000000..31f4801c
+--- /dev/null
++++ b/vapi/libmutter-6.vapi
+@@ -0,0 +1,1475 @@
++/* libmutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "6", lower_case_cprefix = "meta_")]
++namespace Meta {
++	namespace Compositor {
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_disable_unredirect_for_display")]
++		public static void disable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_enable_unredirect_for_display")]
++		public static void enable_unredirect_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
++		public static void focus_stage_window (Meta.Display display, uint32 timestamp);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_display")]
++		public static unowned Clutter.Actor get_feedback_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_display")]
++		public static unowned Clutter.Actor get_stage_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_display")]
++		public static unowned Clutter.Actor get_top_window_group_for_display (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_actors")]
++		public static unowned GLib.List<Clutter.Actor> get_window_actors (Meta.Display display);
++		[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_window_group_for_display")]
++		public static unowned Clutter.Actor get_window_group_for_display (Meta.Display display);
++	}
++	namespace Prefs {
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_bell_is_audible")]
++		public static bool prefs_bell_is_audible ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_change_workspace_name")]
++		public static void prefs_change_workspace_name (int i, string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_double_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_double_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_middle_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_middle_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_action_right_click_titlebar")]
++		public static GDesktop.TitlebarAction prefs_get_action_right_click_titlebar ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_attach_modal_dialogs")]
++		public static bool prefs_get_attach_modal_dialogs ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_maximize")]
++		public static bool prefs_get_auto_maximize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise")]
++		public static bool prefs_get_auto_raise ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_auto_raise_delay")]
++		public static int prefs_get_auto_raise_delay ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_button_layout")]
++		public static Meta.ButtonLayout prefs_get_button_layout ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_center_new_windows")]
++		public static bool prefs_get_center_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_compositing_manager")]
++		public static bool prefs_get_compositing_manager ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_size")]
++		public static int prefs_get_cursor_size ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_cursor_theme")]
++		public static unowned string prefs_get_cursor_theme ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_disable_workarounds")]
++		public static bool prefs_get_disable_workarounds ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_drag_threshold")]
++		public static int prefs_get_drag_threshold ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_draggable_border_width")]
++		public static int prefs_get_draggable_border_width ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_dynamic_workspaces")]
++		public static bool prefs_get_dynamic_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_edge_tiling")]
++		public static bool prefs_get_edge_tiling ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_change_on_pointer_rest")]
++		public static bool prefs_get_focus_change_on_pointer_rest ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_mode")]
++		public static GDesktop.FocusMode prefs_get_focus_mode ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_focus_new_windows")]
++		public static GDesktop.FocusNewWindows prefs_get_focus_new_windows ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_force_fullscreen")]
++		public static bool prefs_get_force_fullscreen ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_accessibility")]
++		public static bool prefs_get_gnome_accessibility ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_gnome_animations")]
++		public static bool prefs_get_gnome_animations ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_keybinding_action")]
++		public static Meta.KeyBindingAction prefs_get_keybinding_action (string name);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_menu")]
++		public static int prefs_get_mouse_button_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_mods")]
++		public static Meta.VirtualModifier prefs_get_mouse_button_mods ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_mouse_button_resize")]
++		public static int prefs_get_mouse_button_resize ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_num_workspaces")]
++		public static int prefs_get_num_workspaces ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_raise_on_click")]
++		public static bool prefs_get_raise_on_click ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_show_fallback_app_menu")]
++		public static bool prefs_get_show_fallback_app_menu ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_titlebar_font")]
++		public static unowned Pango.FontDescription prefs_get_titlebar_font ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell")]
++		public static bool prefs_get_visual_bell ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_visual_bell_type")]
++		public static GDesktop.VisualBellType prefs_get_visual_bell_type ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspace_name")]
++		public static unowned string prefs_get_workspace_name (int i);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_get_workspaces_only_on_primary")]
++		public static bool prefs_get_workspaces_only_on_primary ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_init")]
++		public static void prefs_init ();
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_force_fullscreen")]
++		public static void prefs_set_force_fullscreen (bool whether);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_num_workspaces")]
++		public static void prefs_set_num_workspaces (int n_workspaces);
++		[CCode (cheader_filename = "meta/prefs.h", cname = "meta_prefs_set_show_fallback_app_menu")]
++		public static void prefs_set_show_fallback_app_menu (bool whether);
++	}
++	namespace Util {
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_add_verbose_topic")]
++		public static void add_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_external_binding_name_for_action")]
++		public static string external_binding_name_for_action (uint keybinding_action);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")]
++		public static Meta.LocaleDirection get_locale_direction ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")]
++		public static unowned string gravity_to_string (int gravity);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_debugging")]
++		public static bool is_debugging ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_syncing")]
++		public static bool is_syncing ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_verbose")]
++		public static bool is_verbose ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_is_wayland_compositor")]
++		public static bool is_wayland_compositor ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_add")]
++		public static uint later_add (Meta.LaterType when, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_later_remove")]
++		public static void later_remove (uint later_id);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_pop_no_msg_prefix")]
++		public static void pop_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_push_no_msg_prefix")]
++		public static void push_no_msg_prefix ();
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_rect")]
++		public static Meta.Rectangle? rect (int x, int y, int width, int height);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_remove_verbose_topic")]
++		public static void remove_verbose_topic (Meta.DebugTopic topic);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
++		public static GLib.Pid show_dialog (string type, string message, string timeout, string display, string ok_text, string cancel_text, string icon_name, int transient_for, GLib.SList<void*> columns, GLib.SList<void*> entries);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
++		public static int unsigned_long_equal (void* v1, void* v2);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
++		public static uint unsigned_long_hash (void* v);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop")]
++		public static void x11_error_trap_pop (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_pop_with_return")]
++		public static int x11_error_trap_pop_with_return (Meta.X11Display x11_display);
++		[CCode (cheader_filename = "meta/util.h", cname = "meta_x11_error_trap_push")]
++		public static void x11_error_trap_push (Meta.X11Display x11_display);
++	}
++	[CCode (cheader_filename = "meta/meta-backend.h", type_id = "meta_backend_get_type ()")]
++	public abstract class Backend : GLib.Object, GLib.Initable {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[CCode (cheader_filename = "meta/meta-backend.h", cname = "meta_get_backend")]
++		public static unowned Meta.Backend get_backend ();
++		public unowned Meta.Dnd get_dnd ();
++		public unowned Meta.RemoteAccessController get_remote_access_controller ();
++		public unowned Clutter.Actor get_stage ();
++		public void lock_layout_group (uint idx);
++		public void set_keymap (string layouts, string variants, string options);
++		public void set_numlock (bool numlock_state);
++		public signal void keymap_changed ();
++		public signal void keymap_layout_group_changed (uint object);
++		public signal void last_device_changed (Clutter.InputDevice object);
++		public signal void lid_is_closed_changed (bool object);
++	}
++	[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
++	public class Background : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Background (Meta.Display display);
++		public static void refresh_all ();
++		public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
++		public void set_color (Clutter.Color color);
++		public void set_file (GLib.File? file, GDesktop.BackgroundStyle style);
++		public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-actor.h", type_id = "meta_background_actor_get_type ()")]
++	public class BackgroundActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundActor (Meta.Display display, int monitor);
++		public void set_background (Meta.Background background);
++		public void set_gradient (bool enabled, int height, double tone_start);
++		public void set_monitor (int monitor);
++		public void set_vignette (bool enabled, double brightness, double sharpness);
++		[NoAccessorMethod]
++		public Meta.Background background { owned get; set; }
++		[NoAccessorMethod]
++		public double brightness { get; set; }
++		[NoAccessorMethod]
++		public bool gradient { get; set; }
++		[NoAccessorMethod]
++		public int gradient_height { get; set; }
++		[NoAccessorMethod]
++		public double gradient_max_darkness { get; set; }
++		[NoAccessorMethod]
++		public Meta.Display meta_display { owned get; construct; }
++		[NoAccessorMethod]
++		public int monitor { get; construct; }
++		[NoAccessorMethod]
++		public bool vignette { get; set; }
++		[NoAccessorMethod]
++		public double vignette_sharpness { get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-background-group.h", type_id = "meta_background_group_get_type ()")]
++	public class BackgroundGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public BackgroundGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_get_type ()")]
++	public class BackgroundImage : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImage ();
++		public bool get_success ();
++		public unowned Cogl.Texture get_texture ();
++		public bool is_loaded ();
++		public signal void loaded ();
++	}
++	[CCode (cheader_filename = "meta/meta-background-image.h", type_id = "meta_background_image_cache_get_type ()")]
++	public class BackgroundImageCache : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected BackgroundImageCache ();
++		public static unowned Meta.BackgroundImageCache get_default ();
++		public Meta.BackgroundImage load (GLib.File file);
++		public void purge (GLib.File file);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
++	public class Barrier : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Barrier ();
++		public void destroy ();
++		public bool is_active ();
++		public void release (Meta.BarrierEvent event);
++		[NoAccessorMethod]
++		public Meta.BarrierDirection directions { get; construct; }
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public int x1 { get; construct; }
++		[NoAccessorMethod]
++		public int x2 { get; construct; }
++		[NoAccessorMethod]
++		public int y1 { get; construct; }
++		[NoAccessorMethod]
++		public int y2 { get; construct; }
++		public signal void hit (Meta.BarrierEvent event);
++		public signal void left (Meta.BarrierEvent event);
++	}
++	[CCode (cheader_filename = "meta/barrier.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_barrier_event_get_type ()")]
++	[Compact]
++	public class BarrierEvent {
++		public int dt;
++		public double dx;
++		public double dy;
++		public int event_id;
++		public bool grabbed;
++		public bool released;
++		public uint32 time;
++		public double x;
++		public double y;
++	}
++	[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
++	public class CursorTracker : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected CursorTracker ();
++		public static unowned Meta.CursorTracker get_for_display (Meta.Display display);
++		public void get_hot (out int x, out int y);
++		public void get_pointer (int x, int y, Clutter.ModifierType mods);
++		public bool get_pointer_visible ();
++		public unowned Cogl.Texture get_sprite ();
++		public void set_pointer_visible (bool visible);
++		public signal void cursor_changed ();
++		public signal void cursor_moved (float x, float y);
++		public signal void visibility_changed ();
++	}
++	[CCode (cheader_filename = "meta/display.h", type_id = "meta_display_get_type ()")]
++	public class Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Display ();
++		public void add_ignored_crossing_serial (ulong serial);
++		public uint add_keybinding (string name, GLib.Settings settings, Meta.KeyBindingFlags flags, owned Meta.KeyHandlerFunc handler);
++		public bool begin_grab_op (Meta.Window window, Meta.GrabOp op, bool pointer_already_grabbed, bool frame_action, int button, ulong modmask, uint32 timestamp, int root_x, int root_y);
++		public void clear_mouse_mode ();
++		public void close (uint32 timestamp);
++		public void end_grab_op (uint32 timestamp);
++		public void focus_default_window (uint32 timestamp);
++		public void freeze_keyboard (uint32 timestamp);
++		public int get_current_monitor ();
++		public uint32 get_current_time ();
++		public uint32 get_current_time_roundtrip ();
++		public unowned Meta.Window get_focus_window ();
++		public Meta.GrabOp get_grab_op ();
++		public uint get_keybinding_action (uint keycode, ulong mask);
++		public uint32 get_last_user_time ();
++		public Meta.Rectangle get_monitor_geometry (int monitor);
++		public bool get_monitor_in_fullscreen (int monitor);
++		public int get_monitor_index_for_rect (Meta.Rectangle rect);
++		public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir);
++		public float get_monitor_scale (int monitor);
++		public int get_n_monitors ();
++		public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number);
++		public int get_primary_monitor ();
++		public unowned Meta.Selection get_selection ();
++		public void get_size (out int width, out int height);
++		public unowned Meta.SoundPlayer get_sound_player ();
++		public unowned Meta.Window get_tab_current (Meta.TabList type, Meta.Workspace workspace);
++		public GLib.List<weak Meta.Window> get_tab_list (Meta.TabList type, Meta.Workspace? workspace);
++		public unowned Meta.Window get_tab_next (Meta.TabList type, Meta.Workspace workspace, Meta.Window? window, bool backward);
++		public unowned Meta.WorkspaceManager get_workspace_manager ();
++		public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
++		public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
++		public bool remove_keybinding (string name);
++		public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
++		public void set_cursor (Meta.Cursor cursor);
++		public void set_input_focus (Meta.Window window, bool focus_frame, uint32 timestamp);
++		public GLib.SList<weak Meta.Window> sort_windows_by_stacking (GLib.SList<Meta.Window> windows);
++		public bool supports_extended_barriers ();
++		public void unfreeze_keyboard (uint32 timestamp);
++		public bool ungrab_accelerator (uint action_id);
++		public void ungrab_keyboard (uint32 timestamp);
++		public void unset_input_focus (uint32 timestamp);
++		public bool xserver_time_is_before (uint32 time1, uint32 time2);
++		public Meta.Window focus_window { get; }
++		public signal void accelerator_activated (uint object, Clutter.InputDevice p0, uint p1);
++		public signal void closing ();
++		public signal void cursor_updated ();
++		public signal void gl_video_memory_purged ();
++		public signal void grab_op_begin (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void grab_op_end (Meta.Display object, Meta.Window p0, Meta.GrabOp p1);
++		public signal void in_fullscreen_changed ();
++		public signal bool modifiers_accelerator_activated ();
++		public signal void overlay_key ();
++		public signal void pad_mode_switch (Clutter.InputDevice object, uint p0, uint p1);
++		public signal void restacked ();
++		public signal bool restart ();
++		public signal void show_osd (int object, string p0, string p1);
++		public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
++		public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2);
++		public signal bool show_restart_message (string? message);
++		public signal void showing_desktop_changed ();
++		public signal void window_created (Meta.Window object);
++		public signal void window_demands_attention (Meta.Window object);
++		public signal void window_entered_monitor (int object, Meta.Window p0);
++		public signal void window_left_monitor (int object, Meta.Window p0);
++		public signal void window_marked_urgent (Meta.Window object);
++		public signal void workareas_changed ();
++		public signal void x11_display_closing ();
++		public signal void x11_display_opened ();
++		public signal void x11_display_setup ();
++	}
++	[CCode (cheader_filename = "meta/meta-dnd.h", type_id = "meta_dnd_get_type ()")]
++	public class Dnd : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Dnd ();
++		public signal void dnd_enter ();
++		public signal void dnd_leave ();
++		public signal void dnd_position_change (int object, int p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	[Compact]
++	public class Frame {
++	}
++	[CCode (cheader_filename = "meta/meta-idle-monitor.h", type_id = "meta_idle_monitor_get_type ()")]
++	public class IdleMonitor : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected IdleMonitor ();
++		public uint add_idle_watch (uint64 interval_msec, owned Meta.IdleMonitorWatchFunc? callback);
++		public uint add_user_active_watch (owned Meta.IdleMonitorWatchFunc? callback);
++		public static unowned Meta.IdleMonitor get_core ();
++		public static unowned Meta.IdleMonitor get_for_device (Clutter.InputDevice device);
++		public int64 get_idletime ();
++		public void remove_watch (uint id);
++		[NoAccessorMethod]
++		public Clutter.InputDevice device { owned get; construct; }
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")]
++	[Compact]
++	public class KeyBinding {
++		public uint get_mask ();
++		public Meta.VirtualModifier get_modifiers ();
++		public unowned string get_name ();
++		public bool is_builtin ();
++		public bool is_reversed ();
++		[CCode (cname = "meta_keybindings_set_custom_handler")]
++		public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
++	}
++	[CCode (cheader_filename = "meta/meta-launch-context.h", type_id = "meta_launch_context_get_type ()")]
++	public class LaunchContext : GLib.AppLaunchContext {
++		[CCode (has_construct_function = false)]
++		protected LaunchContext ();
++		public void set_timestamp (uint32 timestamp);
++		public void set_workspace (Meta.Workspace workspace);
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		[NoAccessorMethod]
++		public uint timestamp { get; set; }
++		[NoAccessorMethod]
++		public Meta.Workspace workspace { owned get; set; }
++	}
++	[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
++	public class MonitorManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected MonitorManager ();
++		public bool can_switch_config ();
++		public static unowned Meta.MonitorManager @get ();
++		public static int get_display_configuration_timeout ();
++		public bool get_is_builtin_display_on ();
++		public int get_monitor_for_connector (string connector);
++		public Meta.MonitorSwitchConfigType get_switch_config ();
++		public void switch_config (Meta.MonitorSwitchConfigType config_type);
++		[NoAccessorMethod]
++		public Meta.Backend backend { owned get; construct; }
++		public signal void confirm_display_change ();
++		public signal void monitors_changed ();
++		public signal void monitors_changed_internal ();
++		public signal void power_save_mode_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
++	public abstract class Plugin : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Plugin ();
++		public bool begin_modal (Meta.ModalOptions options, uint32 timestamp);
++		public void complete_display_change (bool ok);
++		[NoWrapper]
++		public virtual void confirm_display_change ();
++		[NoWrapper]
++		public virtual void destroy (Meta.WindowActor actor);
++		public void destroy_completed (Meta.WindowActor actor);
++		public void end_modal (uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.PluginInfo? get_info ();
++		[NoWrapper]
++		public virtual void hide_tile_preview ();
++		[NoWrapper]
++		public virtual bool keybinding_filter (Meta.KeyBinding binding);
++		[NoWrapper]
++		public virtual void kill_switch_workspace ();
++		[NoWrapper]
++		public virtual void kill_window_effects (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void locate_pointer ();
++		public static void manager_set_plugin_type (GLib.Type gtype);
++		[NoWrapper]
++		public virtual void map (Meta.WindowActor actor);
++		public void map_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void minimize (Meta.WindowActor actor);
++		public void minimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual unowned Meta.PluginInfo? plugin_info ();
++		[NoWrapper]
++		public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number);
++		[NoWrapper]
++		public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
++		[NoWrapper]
++		public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
++		[NoWrapper]
++		public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
++		public void size_change_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void size_changed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual void start ();
++		[NoWrapper]
++		public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
++		public void switch_workspace_completed ();
++		[NoWrapper]
++		public virtual void unminimize (Meta.WindowActor actor);
++		public void unminimize_completed (Meta.WindowActor actor);
++		[NoWrapper]
++		public virtual bool xevent_filter (X.Event event);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_controller_get_type ()")]
++	public class RemoteAccessController : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessController ();
++		public signal void new_handle (Meta.RemoteAccessHandle object);
++	}
++	[CCode (cheader_filename = "meta/meta-remote-access-controller.h", type_id = "meta_remote_access_handle_get_type ()")]
++	public class RemoteAccessHandle : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected RemoteAccessHandle ();
++		public virtual void stop ();
++		public signal void stopped ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_get_type ()")]
++	public class Selection : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Selection (Meta.Display display);
++		public GLib.List<string> get_mimetypes (Meta.SelectionType selection_type);
++		public void set_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public async bool transfer_async (Meta.SelectionType selection_type, string mimetype, ssize_t size, GLib.OutputStream output, GLib.Cancellable? cancellable) throws GLib.Error;
++		public void unset_owner (Meta.SelectionType selection_type, Meta.SelectionSource owner);
++		public signal void owner_changed (uint object, Meta.SelectionSource p0);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_get_type ()")]
++	public class SelectionSource : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SelectionSource ();
++		public virtual GLib.List<string> get_mimetypes ();
++		public bool is_active ();
++		public virtual async GLib.InputStream read_async (string mimetype, GLib.Cancellable? cancellable) throws GLib.Error;
++		public virtual signal void activated ();
++		public virtual signal void deactivated ();
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_selection_source_memory_get_type ()")]
++	public class SelectionSourceMemory : Meta.SelectionSource {
++		[CCode (has_construct_function = false, type = "MetaSelectionSource*")]
++		public SelectionSourceMemory (string mimetype, GLib.Bytes content);
++	}
++	[CCode (cheader_filename = "meta/meta-settings.h", has_type_id = false)]
++	[Compact]
++	public class Settings {
++		public int get_font_dpi ();
++		public int get_ui_scaling_factor ();
++	}
++	[CCode (cheader_filename = "meta/main.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")]
++	[Compact]
++	public class Shadow {
++		public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds);
++		public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly);
++		public Meta.Shadow @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
++	public class ShadowFactory : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public ShadowFactory ();
++		public static unowned Meta.ShadowFactory get_default ();
++		public Meta.ShadowParams get_params (string class_name, bool focused);
++		public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
++		public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
++		public signal void changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-shaped-texture.h", type_id = "meta_shaped_texture_get_type ()")]
++	public class ShapedTexture : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false)]
++		protected ShapedTexture ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Cogl.Texture get_texture ();
++		public void set_create_mipmaps (bool create_mipmaps);
++		public void set_mask_texture (Cogl.Texture mask_texture);
++		public void set_opaque_region (owned Cairo.Region opaque_region);
++		public signal void size_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-sound-player.h", type_id = "meta_sound_player_get_type ()")]
++	public class SoundPlayer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected SoundPlayer ();
++		public void play_from_file (GLib.File file, string description, GLib.Cancellable? cancellable = null);
++		public void play_from_theme (string name, string description, GLib.Cancellable? cancellable = null);
++	}
++	[CCode (cheader_filename = "meta/meta-stage.h", type_id = "meta_stage_get_type ()")]
++	public class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Stage ();
++		public static bool is_focused (Meta.Display display);
++		public signal void actors_painted ();
++	}
++	[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")]
++	public class StartupNotification : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupNotification ();
++		public Meta.LaunchContext create_launcher ();
++		[NoAccessorMethod]
++		public Meta.Display display { owned get; construct; }
++		public signal void changed (void* object);
++	}
++	[CCode (cheader_filename = "meta/main.h", type_id = "meta_startup_sequence_get_type ()")]
++	public class StartupSequence : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StartupSequence ();
++		public unowned string get_application_id ();
++		public bool get_completed ();
++		public unowned string get_icon_name ();
++		public unowned string get_id ();
++		public unowned string get_name ();
++		public uint64 get_timestamp ();
++		public unowned string get_wmclass ();
++		public int get_workspace ();
++		public string application_id { get; construct; }
++		public string icon_name { get; construct; }
++		public string id { get; construct; }
++		public string name { get; construct; }
++		public uint64 timestamp { get; construct; }
++		public string wmclass { get; construct; }
++		public int workspace { get; construct; }
++		[HasEmitter]
++		public signal void complete ();
++	}
++	[CCode (cheader_filename = "meta/theme.h", has_type_id = false)]
++	[Compact]
++	public class Theme {
++		public void free ();
++	}
++	[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
++	public abstract class Window : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Window ();
++		public void activate (uint32 current_time);
++		public void activate_with_workspace (uint32 current_time, Meta.Workspace workspace);
++		public bool allows_move ();
++		public bool allows_resize ();
++		public void begin_grab_op (Meta.GrabOp op, bool frame_action, uint32 timestamp);
++		public bool can_close ();
++		public bool can_maximize ();
++		public bool can_minimize ();
++		public bool can_shade ();
++		public void change_workspace (Meta.Workspace workspace);
++		public void change_workspace_by_index (int space_index, bool append);
++		public void check_alive (uint32 timestamp);
++		public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect);
++		public void compute_group ();
++		public void @delete (uint32 timestamp);
++		public unowned Meta.Window find_root_ancestor ();
++		public void focus (uint32 timestamp);
++		public void foreach_ancestor (Meta.WindowForeachFunc func);
++		public void foreach_transient (Meta.WindowForeachFunc func);
++		public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
++		public Meta.Rectangle get_buffer_rect ();
++		public unowned string get_client_machine ();
++		public Meta.WindowClientType get_client_type ();
++		public unowned GLib.Object get_compositor_private ();
++		public unowned string get_description ();
++		public unowned Meta.Display get_display ();
++		public unowned Cairo.Region? get_frame_bounds ();
++		public Meta.Rectangle get_frame_rect ();
++		public Meta.FrameType get_frame_type ();
++		public unowned string get_gtk_app_menu_object_path ();
++		public unowned string get_gtk_application_id ();
++		public unowned string get_gtk_application_object_path ();
++		public unowned string get_gtk_menubar_object_path ();
++		public unowned string get_gtk_theme_variant ();
++		public unowned string get_gtk_unique_bus_name ();
++		public unowned string get_gtk_window_object_path ();
++		public bool get_icon_geometry (out Meta.Rectangle rect);
++		public uint64 get_id ();
++		public Meta.StackLayer get_layer ();
++		public Meta.MaximizeFlags get_maximized ();
++		public int get_monitor ();
++		public unowned string get_mutter_hints ();
++		public int get_pid ();
++		public unowned string get_role ();
++		public unowned string get_sandboxed_app_id ();
++		public uint get_stable_sequence ();
++		public unowned string get_startup_id ();
++		public unowned Meta.Window? get_tile_match ();
++		public unowned string get_title ();
++		public unowned Meta.Window get_transient_for ();
++		public uint32 get_user_time ();
++		public Meta.WindowType get_window_type ();
++		public unowned string get_wm_class ();
++		public unowned string get_wm_class_instance ();
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_current_monitor ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public unowned Meta.Workspace get_workspace ();
++		public X.Window get_xwindow ();
++		public void group_leader_changed ();
++		public bool has_focus ();
++		public bool is_above ();
++		public bool is_always_on_all_workspaces ();
++		public bool is_ancestor_of_transient (Meta.Window transient);
++		public bool is_attached_dialog ();
++		public bool is_client_decorated ();
++		public bool is_fullscreen ();
++		public bool is_hidden ();
++		public bool is_monitor_sized ();
++		public bool is_on_all_workspaces ();
++		public bool is_on_primary_monitor ();
++		public bool is_override_redirect ();
++		public bool is_remote ();
++		public bool is_screen_sized ();
++		public bool is_shaded ();
++		public bool is_skip_taskbar ();
++		public void kill ();
++		public bool located_on_workspace (Meta.Workspace workspace);
++		public void lower ();
++		public void make_above ();
++		public void make_fullscreen ();
++		public void maximize (Meta.MaximizeFlags directions);
++		public void minimize ();
++		public void move_frame (bool user_op, int root_x_nw, int root_y_nw);
++		public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h);
++		public void move_to_monitor (int monitor);
++		public void raise ();
++		public bool requested_bypass_compositor ();
++		public bool requested_dont_bypass_compositor ();
++		public void set_compositor_private (GLib.Object priv);
++		public void set_demands_attention ();
++		public void set_icon_geometry (Meta.Rectangle? rect);
++		public void shade (uint32 timestamp);
++		public void shove_titlebar_onscreen ();
++		public bool showing_on_its_workspace ();
++		public void shutdown_group ();
++		public void stick ();
++		public bool titlebar_is_onscreen ();
++		public void unmake_above ();
++		public void unmake_fullscreen ();
++		public void unmaximize (Meta.MaximizeFlags directions);
++		public void unminimize ();
++		public void unset_demands_attention ();
++		public void unshade (uint32 timestamp);
++		public void unstick ();
++		[NoAccessorMethod]
++		public bool above { get; }
++		[NoAccessorMethod]
++		public bool appears_focused { get; }
++		[NoAccessorMethod]
++		public bool decorated { get; }
++		[NoAccessorMethod]
++		public bool demands_attention { get; }
++		[NoAccessorMethod]
++		public bool fullscreen { get; }
++		public string gtk_app_menu_object_path { get; }
++		public string gtk_application_id { get; }
++		public string gtk_application_object_path { get; }
++		public string gtk_menubar_object_path { get; }
++		public string gtk_unique_bus_name { get; }
++		public string gtk_window_object_path { get; }
++		[NoAccessorMethod]
++		public void* icon { get; }
++		[NoAccessorMethod]
++		public bool maximized_horizontally { get; }
++		[NoAccessorMethod]
++		public bool maximized_vertically { get; }
++		[NoAccessorMethod]
++		public void* mini_icon { get; }
++		[NoAccessorMethod]
++		public bool minimized { get; }
++		public string mutter_hints { get; }
++		[NoAccessorMethod]
++		public bool on_all_workspaces { get; }
++		[NoAccessorMethod]
++		public bool resizeable { get; }
++		[NoAccessorMethod]
++		public bool skip_taskbar { get; }
++		public string title { get; }
++		[NoAccessorMethod]
++		public bool urgent { get; }
++		public uint user_time { get; }
++		public Meta.WindowType window_type { get; }
++		public string wm_class { get; }
++		public signal void position_changed ();
++		public signal void raised ();
++		public signal void shown ();
++		public signal void size_changed ();
++		public signal void unmanaged ();
++		public signal void workspace_changed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")]
++	public abstract class WindowActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowActor ();
++		public Cairo.Surface? get_image (Cairo.RectangleInt? clip);
++		public unowned Meta.Window get_meta_window ();
++		public unowned Meta.ShapedTexture get_texture ();
++		public bool is_destroyed ();
++		public void sync_visibility ();
++		public Meta.Window meta_window { get; construct; }
++		public signal void damaged ();
++		public signal void effects_completed ();
++		public signal void first_frame ();
++		public signal void thawed ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-group.h", type_id = "meta_window_group_get_type ()")]
++	public class WindowGroup : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected WindowGroup ();
++	}
++	[CCode (cheader_filename = "meta/meta-window-shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
++	[Compact]
++	public class WindowShape {
++		[CCode (has_construct_function = false)]
++		public WindowShape (Cairo.Region region);
++		public bool equal (Meta.WindowShape shape_b);
++		public void get_borders (int border_top, int border_right, int border_bottom, int border_left);
++		public uint hash ();
++		public Meta.WindowShape @ref ();
++		public Cairo.Region to_region (int center_width, int center_height);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
++	public class Workspace : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Workspace ();
++		public void activate (uint32 timestamp);
++		public void activate_with_focus (Meta.Window focus_this, uint32 timestamp);
++		public unowned Meta.Display get_display ();
++		public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction);
++		public Meta.Rectangle get_work_area_all_monitors ();
++		public Meta.Rectangle get_work_area_for_monitor (int which_monitor);
++		public int index ();
++		public GLib.List<weak Meta.Window> list_windows ();
++		public void set_builtin_struts (GLib.SList<Meta.Strut?> struts);
++		[NoAccessorMethod]
++		public uint n_windows { get; }
++		[NoAccessorMethod]
++		public uint workspace_index { get; }
++		public signal void window_added (Meta.Window object);
++		public signal void window_removed (Meta.Window object);
++	}
++	[CCode (cheader_filename = "meta/meta-workspace-manager.h", type_id = "meta_workspace_manager_get_type ()")]
++	public class WorkspaceManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected WorkspaceManager ();
++		public unowned Meta.Workspace append_new_workspace (bool activate, uint32 timestamp);
++		public unowned Meta.Workspace get_active_workspace ();
++		public int get_active_workspace_index ();
++		public int get_n_workspaces ();
++		public unowned Meta.Workspace? get_workspace_by_index (int index);
++		public void override_workspace_layout (Meta.DisplayCorner starting_corner, bool vertical_layout, int n_rows, int n_columns);
++		public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
++		public void reorder_workspace (Meta.Workspace workspace, int new_index);
++		[NoAccessorMethod]
++		public int layout_columns { get; }
++		[NoAccessorMethod]
++		public int layout_rows { get; }
++		public int n_workspaces { get; }
++		public signal void active_workspace_changed ();
++		public signal void showing_desktop_changed ();
++		public signal void workspace_added (int object);
++		public signal void workspace_removed (int object);
++		public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
++		public signal void workspaces_reordered ();
++	}
++	[CCode (cheader_filename = "meta/meta-x11-display.h", type_id = "meta_x11_display_get_type ()")]
++	public class X11Display : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected X11Display ();
++		public void clear_stage_input_region ();
++		public int get_damage_event_base ();
++		public int get_screen_number ();
++		public int get_shape_event_base ();
++		public bool has_shape ();
++		public void set_cm_selection ();
++		public void set_stage_input_region (X.XserverRegion region);
++		public bool xwindow_is_a_no_focus_window (X.Window xwindow);
++	}
++	[CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")]
++	public interface CloseDialog : GLib.Object {
++		public abstract void focus ();
++		public abstract void hide ();
++		public bool is_visible ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.CloseDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", type_cname = "MetaInhibitShortcutsDialogInterface", type_id = "meta_inhibit_shortcuts_dialog_get_type ()")]
++	public interface InhibitShortcutsDialog : GLib.Object {
++		public abstract void hide ();
++		public abstract void show ();
++		[NoAccessorMethod]
++		public abstract Meta.Window window { owned get; construct; }
++		[HasEmitter]
++		public signal void response (Meta.InhibitShortcutsDialogResponse response);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ButtonLayout {
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction left_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool left_buttons_has_spacer[4];
++		[CCode (array_length = false)]
++		public weak Meta.ButtonFunction right_buttons[4];
++		[CCode (array_length = false)]
++		public weak bool right_buttons_has_spacer[4];
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Edge {
++		public Meta.Rectangle rect;
++		public Meta.Side side_type;
++		public Meta.EdgeType edge_type;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct FrameBorders {
++		public Gtk.Border visible;
++		public Gtk.Border invisible;
++		public Gtk.Border total;
++		public void clear ();
++	}
++	[CCode (cheader_filename = "meta/meta-plugin.h", has_type_id = false)]
++	public struct PluginInfo {
++		public weak string name;
++		public weak string version;
++		public weak string author;
++		public weak string license;
++		public weak string description;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct PluginVersion {
++		public uint version_major;
++		public uint version_minor;
++		public uint version_micro;
++		public uint version_api;
++	}
++	[CCode (cheader_filename = "meta/main.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")]
++	public struct Rectangle {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++		public int area ();
++		public bool contains_rect (Meta.Rectangle inner_rect);
++		public Meta.Rectangle? copy ();
++		public bool could_fit_rect (Meta.Rectangle inner_rect);
++		public bool equal (Meta.Rectangle src2);
++		public void free ();
++		public bool horiz_overlap (Meta.Rectangle rect2);
++		public bool intersect (Meta.Rectangle src2, out Meta.Rectangle dest);
++		public bool overlap (Meta.Rectangle rect2);
++		public Meta.Rectangle union (Meta.Rectangle rect2);
++		public bool vert_overlap (Meta.Rectangle rect2);
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct ShadowParams {
++		public int radius;
++		public int top_fade;
++		public int x_offset;
++		public int y_offset;
++		public uint8 opacity;
++	}
++	[CCode (cheader_filename = "meta/main.h", has_type_id = false)]
++	public struct Strut {
++		public Meta.Rectangle rect;
++		public Meta.Side side;
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BARRIER_DIRECTION_", type_id = "meta_barrier_direction_get_type ()")]
++	[Flags]
++	public enum BarrierDirection {
++		POSITIVE_X,
++		POSITIVE_Y,
++		NEGATIVE_X,
++		NEGATIVE_Y
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")]
++	public enum ButtonFunction {
++		MENU,
++		MINIMIZE,
++		MAXIMIZE,
++		CLOSE,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CLOSE_DIALOG_RESPONSE_", type_id = "meta_close_dialog_response_get_type ()")]
++	public enum CloseDialogResponse {
++		WAIT,
++		FORCE_CLOSE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_COMP_EFFECT_", type_id = "meta_comp_effect_get_type ()")]
++	public enum CompEffect {
++		CREATE,
++		UNMINIMIZE,
++		DESTROY,
++		MINIMIZE,
++		NONE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_CURSOR_", type_id = "meta_cursor_get_type ()")]
++	public enum Cursor {
++		NONE,
++		DEFAULT,
++		NORTH_RESIZE,
++		SOUTH_RESIZE,
++		WEST_RESIZE,
++		EAST_RESIZE,
++		SE_RESIZE,
++		SW_RESIZE,
++		NE_RESIZE,
++		NW_RESIZE,
++		MOVE_OR_RESIZE_WINDOW,
++		BUSY,
++		DND_IN_DRAG,
++		DND_MOVE,
++		DND_COPY,
++		DND_UNSUPPORTED_TARGET,
++		POINTING_HAND,
++		CROSSHAIR,
++		IBEAM,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")]
++	[Flags]
++	public enum DebugTopic {
++		VERBOSE,
++		FOCUS,
++		WORKAREA,
++		STACK,
++		THEMES,
++		SM,
++		EVENTS,
++		WINDOW_STATE,
++		WINDOW_OPS,
++		GEOMETRY,
++		PLACEMENT,
++		PING,
++		XINERAMA,
++		KEYBINDINGS,
++		SYNC,
++		ERRORS,
++		STARTUP,
++		PREFS,
++		GROUPS,
++		RESIZING,
++		SHAPES,
++		COMPOSITOR,
++		EDGE_RESISTANCE,
++		DBUS
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")]
++	[Flags]
++	public enum Direction {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM,
++		UP,
++		DOWN,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_corner_get_type ()")]
++	public enum DisplayCorner {
++		TOPLEFT,
++		TOPRIGHT,
++		BOTTOMLEFT,
++		BOTTOMRIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_DISPLAY_", type_id = "meta_display_direction_get_type ()")]
++	public enum DisplayDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EDGE_", type_id = "meta_edge_type_get_type ()")]
++	public enum EdgeType {
++		WINDOW,
++		MONITOR,
++		SCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_EXIT_", type_id = "meta_exit_code_get_type ()")]
++	public enum ExitCode {
++		SUCCESS,
++		ERROR
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")]
++	[Flags]
++	public enum FrameFlags {
++		ALLOWS_DELETE,
++		ALLOWS_MENU,
++		ALLOWS_MINIMIZE,
++		ALLOWS_MAXIMIZE,
++		ALLOWS_VERTICAL_RESIZE,
++		ALLOWS_HORIZONTAL_RESIZE,
++		HAS_FOCUS,
++		SHADED,
++		STUCK,
++		MAXIMIZED,
++		ALLOWS_SHADE,
++		ALLOWS_MOVE,
++		FULLSCREEN,
++		ABOVE,
++		TILED_LEFT,
++		TILED_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")]
++	public enum FrameType {
++		NORMAL,
++		DIALOG,
++		MODAL_DIALOG,
++		UTILITY,
++		MENU,
++		BORDER,
++		ATTACHED,
++		LAST;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAB_OP_", type_id = "meta_grab_op_get_type ()")]
++	public enum GrabOp {
++		NONE,
++		WINDOW_BASE,
++		COMPOSITOR,
++		WAYLAND_POPUP,
++		FRAME_BUTTON,
++		MOVING,
++		RESIZING_NW,
++		RESIZING_N,
++		RESIZING_NE,
++		RESIZING_E,
++		RESIZING_SW,
++		RESIZING_S,
++		RESIZING_SE,
++		RESIZING_W,
++		KEYBOARD_MOVING,
++		KEYBOARD_RESIZING_UNKNOWN,
++		KEYBOARD_RESIZING_NW,
++		KEYBOARD_RESIZING_N,
++		KEYBOARD_RESIZING_NE,
++		KEYBOARD_RESIZING_E,
++		KEYBOARD_RESIZING_SW,
++		KEYBOARD_RESIZING_S,
++		KEYBOARD_RESIZING_SE,
++		KEYBOARD_RESIZING_W
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")]
++	public enum InhibitShortcutsDialogResponse {
++		ALLOW,
++		DENY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
++	public enum KeyBindingAction {
++		NONE,
++		WORKSPACE_1,
++		WORKSPACE_2,
++		WORKSPACE_3,
++		WORKSPACE_4,
++		WORKSPACE_5,
++		WORKSPACE_6,
++		WORKSPACE_7,
++		WORKSPACE_8,
++		WORKSPACE_9,
++		WORKSPACE_10,
++		WORKSPACE_11,
++		WORKSPACE_12,
++		WORKSPACE_LEFT,
++		WORKSPACE_RIGHT,
++		WORKSPACE_UP,
++		WORKSPACE_DOWN,
++		WORKSPACE_LAST,
++		SWITCH_APPLICATIONS,
++		SWITCH_APPLICATIONS_BACKWARD,
++		SWITCH_GROUP,
++		SWITCH_GROUP_BACKWARD,
++		SWITCH_WINDOWS,
++		SWITCH_WINDOWS_BACKWARD,
++		SWITCH_PANELS,
++		SWITCH_PANELS_BACKWARD,
++		CYCLE_GROUP,
++		CYCLE_GROUP_BACKWARD,
++		CYCLE_WINDOWS,
++		CYCLE_WINDOWS_BACKWARD,
++		CYCLE_PANELS,
++		CYCLE_PANELS_BACKWARD,
++		SHOW_DESKTOP,
++		PANEL_MAIN_MENU,
++		PANEL_RUN_DIALOG,
++		TOGGLE_RECORDING,
++		SET_SPEW_MARK,
++		ACTIVATE_WINDOW_MENU,
++		TOGGLE_FULLSCREEN,
++		TOGGLE_MAXIMIZED,
++		TOGGLE_TILED_LEFT,
++		TOGGLE_TILED_RIGHT,
++		TOGGLE_ABOVE,
++		MAXIMIZE,
++		UNMAXIMIZE,
++		TOGGLE_SHADED,
++		MINIMIZE,
++		CLOSE,
++		BEGIN_MOVE,
++		BEGIN_RESIZE,
++		TOGGLE_ON_ALL_WORKSPACES,
++		MOVE_TO_WORKSPACE_1,
++		MOVE_TO_WORKSPACE_2,
++		MOVE_TO_WORKSPACE_3,
++		MOVE_TO_WORKSPACE_4,
++		MOVE_TO_WORKSPACE_5,
++		MOVE_TO_WORKSPACE_6,
++		MOVE_TO_WORKSPACE_7,
++		MOVE_TO_WORKSPACE_8,
++		MOVE_TO_WORKSPACE_9,
++		MOVE_TO_WORKSPACE_10,
++		MOVE_TO_WORKSPACE_11,
++		MOVE_TO_WORKSPACE_12,
++		MOVE_TO_WORKSPACE_LEFT,
++		MOVE_TO_WORKSPACE_RIGHT,
++		MOVE_TO_WORKSPACE_UP,
++		MOVE_TO_WORKSPACE_DOWN,
++		MOVE_TO_WORKSPACE_LAST,
++		MOVE_TO_MONITOR_LEFT,
++		MOVE_TO_MONITOR_RIGHT,
++		MOVE_TO_MONITOR_UP,
++		MOVE_TO_MONITOR_DOWN,
++		RAISE_OR_LOWER,
++		RAISE,
++		LOWER,
++		MAXIMIZE_VERTICALLY,
++		MAXIMIZE_HORIZONTALLY,
++		MOVE_TO_CORNER_NW,
++		MOVE_TO_CORNER_NE,
++		MOVE_TO_CORNER_SW,
++		MOVE_TO_CORNER_SE,
++		MOVE_TO_SIDE_N,
++		MOVE_TO_SIDE_S,
++		MOVE_TO_SIDE_E,
++		MOVE_TO_SIDE_W,
++		MOVE_TO_CENTER,
++		OVERLAY_KEY,
++		LOCATE_POINTER_KEY,
++		ISO_NEXT_GROUP,
++		ALWAYS_ON_TOP,
++		SWITCH_MONITOR,
++		ROTATE_MONITOR,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_KEY_BINDING_", type_id = "meta_key_binding_flags_get_type ()")]
++	[Flags]
++	public enum KeyBindingFlags {
++		NONE,
++		PER_WINDOW,
++		BUILTIN,
++		IS_REVERSED,
++		NON_MASKABLE,
++		IGNORE_AUTOREPEAT,
++		NO_AUTO_GRAB
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LATER_", type_id = "meta_later_type_get_type ()")]
++	public enum LaterType {
++		RESIZE,
++		CALC_SHOWING,
++		CHECK_FULLSCREEN,
++		SYNC_STACK,
++		BEFORE_REDRAW,
++		IDLE
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LOCALE_DIRECTION_", type_id = "meta_locale_direction_get_type ()")]
++	public enum LocaleDirection {
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MAXIMIZE_", type_id = "meta_maximize_flags_get_type ()")]
++	[Flags]
++	public enum MaximizeFlags {
++		HORIZONTAL,
++		VERTICAL,
++		BOTH
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")]
++	[Flags]
++	public enum ModalOptions {
++		POINTER_ALREADY_GRABBED,
++		KEYBOARD_ALREADY_GRABBED
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")]
++	public enum MonitorSwitchConfigType {
++		ALL_MIRROR,
++		ALL_LINEAR,
++		EXTERNAL,
++		BUILTIN,
++		UNKNOWN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_MOTION_", type_id = "meta_motion_direction_get_type ()")]
++	public enum MotionDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		UP_LEFT,
++		UP_RIGHT,
++		DOWN_LEFT,
++		DOWN_RIGHT
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")]
++	public enum PadActionType {
++		BUTTON,
++		RING,
++		STRIP
++	}
++	[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")]
++	public enum Preference {
++		MOUSE_BUTTON_MODS,
++		FOCUS_MODE,
++		FOCUS_NEW_WINDOWS,
++		ATTACH_MODAL_DIALOGS,
++		RAISE_ON_CLICK,
++		ACTION_DOUBLE_CLICK_TITLEBAR,
++		ACTION_MIDDLE_CLICK_TITLEBAR,
++		ACTION_RIGHT_CLICK_TITLEBAR,
++		AUTO_RAISE,
++		AUTO_RAISE_DELAY,
++		FOCUS_CHANGE_ON_POINTER_REST,
++		TITLEBAR_FONT,
++		NUM_WORKSPACES,
++		DYNAMIC_WORKSPACES,
++		KEYBINDINGS,
++		DISABLE_WORKAROUNDS,
++		BUTTON_LAYOUT,
++		WORKSPACE_NAMES,
++		VISUAL_BELL,
++		AUDIBLE_BELL,
++		VISUAL_BELL_TYPE,
++		GNOME_ACCESSIBILITY,
++		GNOME_ANIMATIONS,
++		CURSOR_THEME,
++		CURSOR_SIZE,
++		RESIZE_WITH_RIGHT_BUTTON,
++		EDGE_TILING,
++		FORCE_FULLSCREEN,
++		WORKSPACES_ONLY_ON_PRIMARY,
++		DRAGGABLE_BORDER_WIDTH,
++		AUTO_MAXIMIZE,
++		CENTER_NEW_WINDOWS,
++		DRAG_THRESHOLD,
++		LOCATE_POINTER;
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_", type_id = "meta_selection_type_get_type ()")]
++	public enum SelectionType {
++		SELECTION_PRIMARY,
++		SELECTION_CLIPBOARD,
++		SELECTION_DND,
++		N_SELECTION_TYPES
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SHADOW_MODE_", type_id = "meta_shadow_mode_get_type ()")]
++	public enum ShadowMode {
++		AUTO,
++		FORCED_OFF,
++		FORCED_ON
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
++	public enum Side {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
++	public enum SizeChange {
++		MAXIMIZE,
++		UNMAXIMIZE,
++		FULLSCREEN,
++		UNFULLSCREEN
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
++	public enum StackLayer {
++		DESKTOP,
++		BOTTOM,
++		NORMAL,
++		TOP,
++		DOCK,
++		OVERRIDE_REDIRECT,
++		LAST
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_LIST_", type_id = "meta_tab_list_get_type ()")]
++	public enum TabList {
++		NORMAL,
++		DOCKS,
++		GROUP,
++		NORMAL_ALL
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_TAB_SHOW_", type_id = "meta_tab_show_type_get_type ()")]
++	public enum TabShowType {
++		ICON,
++		INSTANTLY
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_VIRTUAL_", type_id = "meta_virtual_modifier_get_type ()")]
++	[Flags]
++	public enum VirtualModifier {
++		SHIFT_MASK,
++		CONTROL_MASK,
++		ALT_MASK,
++		META_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_CLIENT_TYPE_", type_id = "meta_window_client_type_get_type ()")]
++	public enum WindowClientType {
++		WAYLAND,
++		X11
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_MENU_", type_id = "meta_window_menu_type_get_type ()")]
++	public enum WindowMenuType {
++		WM,
++		APP
++	}
++	[CCode (cheader_filename = "meta/main.h", cprefix = "META_WINDOW_", type_id = "meta_window_type_get_type ()")]
++	public enum WindowType {
++		NORMAL,
++		DESKTOP,
++		DOCK,
++		DIALOG,
++		MODAL_DIALOG,
++		TOOLBAR,
++		MENU,
++		UTILITY,
++		SPLASHSCREEN,
++		DROPDOWN_MENU,
++		POPUP_MENU,
++		TOOLTIP,
++		NOTIFICATION,
++		COMBO,
++		DND,
++		OVERRIDE_OTHER
++	}
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 2.9)]
++	public delegate void IdleMonitorWatchFunc (Meta.IdleMonitor monitor, uint watch_id);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 4.9)]
++	public delegate void KeyHandlerFunc (Meta.Display display, Meta.Window window, [CCode (type = "ClutterKeyEvent*")] Clutter.KeyEvent? event, Meta.KeyBinding binding);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate void PrefsChangedFunc (Meta.Preference pref);
++	[CCode (cheader_filename = "meta/main.h", instance_pos = 1.9)]
++	public delegate bool WindowForeachFunc (Meta.Window window);
++	[CCode (cheader_filename = "meta/main.h", cname = "META_CURRENT_TIME")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_DEFAULT_ICON_NAME")]
++	public const string DEFAULT_ICON_NAME;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_HEIGHT")]
++	public const int ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_ICON_WIDTH")]
++	public const int ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MAJOR_VERSION")]
++	public const int MAJOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MICRO_VERSION")]
++	public const int MICRO_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_HEIGHT")]
++	public const int MINI_ICON_HEIGHT;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINI_ICON_WIDTH")]
++	public const int MINI_ICON_WIDTH;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_MINOR_VERSION")]
++	public const int MINOR_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PLUGIN_API_VERSION")]
++	public const int PLUGIN_API_VERSION;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_BEFORE_REDRAW")]
++	public const int PRIORITY_BEFORE_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_PREFS_NOTIFY")]
++	public const int PRIORITY_PREFS_NOTIFY;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_REDRAW")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_PRIORITY_RESIZE")]
++	public const int PRIORITY_RESIZE;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_KEYBOARD_ID")]
++	public const int VIRTUAL_CORE_KEYBOARD_ID;
++	[CCode (cheader_filename = "meta/main.h", cname = "META_VIRTUAL_CORE_POINTER_ID")]
++	public const int VIRTUAL_CORE_POINTER_ID;
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool activate_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void add_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void exit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static string g_utf8_strndup (string src, size_t n);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static unowned GLib.OptionContext get_option_context ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool get_replace_current_wm ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool is_restart ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void quit (Meta.ExitCode code);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void register_with_session ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void remove_clutter_debug_flags (Clutter.DebugFlag debug_flags, Clutter.DrawDebugFlag draw_flags, Clutter.PickDebugFlag pick_flags);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void restart (string? message);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static int run ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_gnome_wm_keybindings (string wm_keybindings);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void set_wm_name (string wm_name);
++	[CCode (cheader_filename = "meta/main.h")]
++	public static void test_init ();
++	[CCode (cheader_filename = "meta/main.h")]
++	public static bool x11_init_gdk_display () throws GLib.Error;
++}
+diff --git a/vapi/mutter-clutter-6-custom.vala b/vapi/mutter-clutter-6-custom.vala
+new file mode 100644
+index 00000000..89224be6
+--- /dev/null
++++ b/vapi/mutter-clutter-6-custom.vala
+@@ -0,0 +1,147 @@
++namespace Clutter {
++
++  public struct Matrix : Cogl.Matrix {
++  }
++
++  public class Backend : GLib.Object {
++    [NoWrapper]
++    public virtual void add_options (GLib.OptionGroup group);
++    [NoWrapper]
++    public virtual bool create_context () throws GLib.Error;
++    [NoWrapper]
++    public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++    [NoWrapper]
++    public virtual void ensure_context (Clutter.Stage stage);
++    [NoWrapper]
++    public virtual Clutter.FeatureFlags get_features ();
++    [NoWrapper]
++    public virtual void init_events ();
++    [NoWrapper]
++    public virtual void init_features ();
++    [NoWrapper]
++    public virtual bool post_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual bool pre_parse () throws GLib.Error;
++    [NoWrapper]
++    public virtual void redraw (Clutter.Stage stage);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++  public class Box : Clutter.Actor {
++    public Clutter.LayoutManager layout_manager { get; set; }
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_COLOR", cheader_filename = "clutter/clutter.h")]
++  public struct Color {
++    [CCode (cname = "clutter_color_from_hls")]
++    public Color.from_hls (float hue, float luminance, float saturation);
++    [CCode (cname = "clutter_color_from_pixel")]
++    public Color.from_pixel (uint32 pixel);
++    [CCode (cname = "clutter_color_from_string")]
++    public Color.from_string (string str);
++    [CCode (cname = "clutter_color_from_string")]
++    public bool parse_string (string str);
++    public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++  public interface Container : GLib.Object {
++    public void add (params Clutter.Actor[] actors);
++    [CCode (cname = "clutter_container_class_find_child_property")]
++    public class unowned GLib.ParamSpec find_child_property (string property_name);
++    [CCode (cname = "clutter_container_class_list_child_properties")]
++    public class unowned GLib.ParamSpec[] list_child_properties ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++  [Compact]
++  public class Event {
++    public Clutter.AnyEvent any { [CCode (cname = "(ClutterAnyEvent *)")] get; }
++    public Clutter.ButtonEvent button { [CCode (cname = "(ClutterButtonEvent *)")] get; }
++    public Clutter.CrossingEvent crossing { [CCode (cname = "(ClutterCrossingEvent *)")] get; }
++    public Clutter.KeyEvent key { [CCode (cname = "(ClutterKeyEvent *)")] get; }
++    public Clutter.MotionEvent motion { [CCode (cname = "(ClutterMotionEvent *)")] get; }
++    public Clutter.ScrollEvent scroll { [CCode (cname = "(ClutterScrollEvent *)")] get; }
++    public Clutter.StageStateEvent stage_state { [CCode (cname = "(ClutterStageStateEvent *)")] get; }
++    public Clutter.TouchEvent touch { [CCode (cname = "(ClutterTouchEvent *)")] get; }
++    public Clutter.TouchpadPinchEvent touchpad_pinch { [CCode (cname = "(ClutterTouchpadPinchEvent *)")] get; }
++    public Clutter.TouchpadSwipeEvent touchpad_swipe { [CCode (cname = "(ClutterTouchpadSwipeEvent *)")] get; }
++  }
++
++  [CCode (type_id = "clutter_stage_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Stage : Clutter.Group {
++    [CCode (cname = "clutter_redraw")]
++    public void redraw ();
++  }
++
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public interface StageWindow : GLib.Object {
++    [NoWrapper]
++    public abstract int get_pending_swaps ();
++    [NoWrapper]
++    public abstract unowned Clutter.Actor get_wrapper ();
++    [NoWrapper]
++    public abstract bool has_redraw_clips ();
++    [NoWrapper]
++    public abstract void hide ();
++    [NoWrapper]
++    public abstract bool ignoring_redraw_clips ();
++    [NoWrapper]
++    public abstract bool realize ();
++    [NoWrapper]
++    public abstract void resize (int width, int height);
++    [NoWrapper]
++    public abstract void set_cursor_visible (bool cursor_visible);
++    [NoWrapper]
++    public abstract void set_fullscreen (bool is_fullscreen);
++    [NoWrapper]
++    public abstract void set_title (string title);
++    [NoWrapper]
++    public abstract void set_user_resizable (bool is_resizable);
++    [NoWrapper]
++    public abstract void show (bool do_raise);
++    [NoWrapper]
++    public abstract void unrealize ();
++  }
++
++  [CCode (type_id = "clutter_texture_get_type ()", cheader_filename = "clutter/clutter.h")]
++  public class Texture : Clutter.Actor {
++    public Cogl.Material cogl_material { get; set; }
++    public Cogl.Texture cogl_texture { get; set; }
++  }
++
++  [Compact]
++  [CCode (cheader_filename = "clutter/clutter.h")]
++  public class TimeoutPool {
++    [CCode (has_construct_function = false)]
++    public TimeoutPool (int priority);
++  }
++
++  [CCode (cprefix = "CLUTTER_FEATURE_", cheader_filename = "clutter/clutter.h")]
++  [Flags]
++  public enum FeatureFlags {
++    TEXTURE_NPOT;
++    [CCode (cname = "clutter_feature_available")]
++    public bool is_available ();
++    [CCode (cname = "clutter_feature_get_all")]
++    public static Clutter.FeatureFlags @get ();
++  }
++
++  [CCode (type_id = "CLUTTER_TYPE_UNITS", cheader_filename = "clutter/clutter.h")]
++  public struct Units {
++    [CCode (cname = "clutter_units_from_cm")]
++    public Units.from_cm (float cm);
++    [CCode (cname = "clutter_units_from_em")]
++    public Units.from_em (float em);
++    [CCode (cname = "clutter_units_from_em_for_font")]
++    public Units.from_em_for_font (string font_name, float em);
++    [CCode (cname = "clutter_units_from_mm")]
++    public Units.from_mm (float mm);
++    [CCode (cname = "clutter_units_from_pixels")]
++    public Units.from_pixels (int px);
++    [CCode (cname = "clutter_units_from_pt")]
++    public Units.from_pt (float pt);
++    [CCode (cname = "clutter_units_from_string")]
++    public Units.from_string (string str);
++  }
++}
+diff --git a/vapi/mutter-clutter-6.deps b/vapi/mutter-clutter-6.deps
+new file mode 100644
+index 00000000..7a70d6df
+--- /dev/null
++++ b/vapi/mutter-clutter-6.deps
+@@ -0,0 +1,4 @@
++atk
++cairo
++json-glib-1.0
++mutter-cogl-6
+diff --git a/vapi/mutter-clutter-6.vapi b/vapi/mutter-clutter-6.vapi
+new file mode 100644
+index 00000000..d66f9ac8
+--- /dev/null
++++ b/vapi/mutter-clutter-6.vapi
+@@ -0,0 +1,8687 @@
++/* mutter-clutter-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "6", lower_case_cprefix = "clutter_")]
++namespace Clutter {
++	namespace Key {
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
++		public const uint @0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
++		public const uint @1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_2")]
++		public const uint @2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3")]
++		public const uint @3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_AltCursor")]
++		public const uint @3270_AltCursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Attn")]
++		public const uint @3270_Attn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_BackTab")]
++		public const uint @3270_BackTab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ChangeScreen")]
++		public const uint @3270_ChangeScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Copy")]
++		public const uint @3270_Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorBlink")]
++		public const uint @3270_CursorBlink;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_CursorSelect")]
++		public const uint @3270_CursorSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_DeleteWord")]
++		public const uint @3270_DeleteWord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Duplicate")]
++		public const uint @3270_Duplicate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Enter")]
++		public const uint @3270_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseEOF")]
++		public const uint @3270_EraseEOF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_EraseInput")]
++		public const uint @3270_EraseInput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_ExSelect")]
++		public const uint @3270_ExSelect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_FieldMark")]
++		public const uint @3270_FieldMark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Ident")]
++		public const uint @3270_Ident;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Jump")]
++		public const uint @3270_Jump;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_KeyClick")]
++		public const uint @3270_KeyClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Left2")]
++		public const uint @3270_Left2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA1")]
++		public const uint @3270_PA1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA2")]
++		public const uint @3270_PA2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PA3")]
++		public const uint @3270_PA3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Play")]
++		public const uint @3270_Play;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_PrintScreen")]
++		public const uint @3270_PrintScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Quit")]
++		public const uint @3270_Quit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Record")]
++		public const uint @3270_Record;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Reset")]
++		public const uint @3270_Reset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Right2")]
++		public const uint @3270_Right2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Rule")]
++		public const uint @3270_Rule;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Setup")]
++		public const uint @3270_Setup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_3270_Test")]
++		public const uint @3270_Test;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_4")]
++		public const uint @4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_5")]
++		public const uint @5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_6")]
++		public const uint @6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_7")]
++		public const uint @7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_8")]
++		public const uint @8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_9")]
++		public const uint @9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_A")]
++		public const uint A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AE")]
++		public const uint AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aacute")]
++		public const uint Aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abelowdot")]
++		public const uint Abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreve")]
++		public const uint Abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abreveacute")]
++		public const uint Abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevebelowdot")]
++		public const uint Abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevegrave")]
++		public const uint Abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevehook")]
++		public const uint Abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Abrevetilde")]
++		public const uint Abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Enable")]
++		public const uint AccessX_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AccessX_Feedback_Enable")]
++		public const uint AccessX_Feedback_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflex")]
++		public const uint Acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexacute")]
++		public const uint Acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexbelowdot")]
++		public const uint Acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexgrave")]
++		public const uint Acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflexhook")]
++		public const uint Acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Acircumflextilde")]
++		public const uint Acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AddFavorite")]
++		public const uint AddFavorite;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Adiaeresis")]
++		public const uint Adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Agrave")]
++		public const uint Agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ahook")]
++		public const uint Ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_L")]
++		public const uint Alt_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Alt_R")]
++		public const uint Alt_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Amacron")]
++		public const uint Amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aogonek")]
++		public const uint Aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationLeft")]
++		public const uint ApplicationLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ApplicationRight")]
++		public const uint ApplicationRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_0")]
++		public const uint Arabic_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_1")]
++		public const uint Arabic_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_2")]
++		public const uint Arabic_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_3")]
++		public const uint Arabic_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_4")]
++		public const uint Arabic_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_5")]
++		public const uint Arabic_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_6")]
++		public const uint Arabic_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_7")]
++		public const uint Arabic_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_8")]
++		public const uint Arabic_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_9")]
++		public const uint Arabic_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ain")]
++		public const uint Arabic_ain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alef")]
++		public const uint Arabic_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_alefmaksura")]
++		public const uint Arabic_alefmaksura;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_beh")]
++		public const uint Arabic_beh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_comma")]
++		public const uint Arabic_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dad")]
++		public const uint Arabic_dad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dal")]
++		public const uint Arabic_dal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_damma")]
++		public const uint Arabic_damma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_dammatan")]
++		public const uint Arabic_dammatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ddal")]
++		public const uint Arabic_ddal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_farsi_yeh")]
++		public const uint Arabic_farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fatha")]
++		public const uint Arabic_fatha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fathatan")]
++		public const uint Arabic_fathatan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_feh")]
++		public const uint Arabic_feh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_fullstop")]
++		public const uint Arabic_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_gaf")]
++		public const uint Arabic_gaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ghain")]
++		public const uint Arabic_ghain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ha")]
++		public const uint Arabic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hah")]
++		public const uint Arabic_hah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza")]
++		public const uint Arabic_hamza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_above")]
++		public const uint Arabic_hamza_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamza_below")]
++		public const uint Arabic_hamza_below;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonalef")]
++		public const uint Arabic_hamzaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonwaw")]
++		public const uint Arabic_hamzaonwaw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaonyeh")]
++		public const uint Arabic_hamzaonyeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_hamzaunderalef")]
++		public const uint Arabic_hamzaunderalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh")]
++		public const uint Arabic_heh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_doachashmee")]
++		public const uint Arabic_heh_doachashmee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_heh_goal")]
++		public const uint Arabic_heh_goal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeem")]
++		public const uint Arabic_jeem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_jeh")]
++		public const uint Arabic_jeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kaf")]
++		public const uint Arabic_kaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasra")]
++		public const uint Arabic_kasra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_kasratan")]
++		public const uint Arabic_kasratan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_keheh")]
++		public const uint Arabic_keheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_khah")]
++		public const uint Arabic_khah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_lam")]
++		public const uint Arabic_lam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_madda_above")]
++		public const uint Arabic_madda_above;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_maddaonalef")]
++		public const uint Arabic_maddaonalef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_meem")]
++		public const uint Arabic_meem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon")]
++		public const uint Arabic_noon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_noon_ghunna")]
++		public const uint Arabic_noon_ghunna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_peh")]
++		public const uint Arabic_peh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_percent")]
++		public const uint Arabic_percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_qaf")]
++		public const uint Arabic_qaf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_question_mark")]
++		public const uint Arabic_question_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_ra")]
++		public const uint Arabic_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_rreh")]
++		public const uint Arabic_rreh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sad")]
++		public const uint Arabic_sad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_seen")]
++		public const uint Arabic_seen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_semicolon")]
++		public const uint Arabic_semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_shadda")]
++		public const uint Arabic_shadda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sheen")]
++		public const uint Arabic_sheen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_sukun")]
++		public const uint Arabic_sukun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_superscript_alef")]
++		public const uint Arabic_superscript_alef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_switch")]
++		public const uint Arabic_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tah")]
++		public const uint Arabic_tah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tatweel")]
++		public const uint Arabic_tatweel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tcheh")]
++		public const uint Arabic_tcheh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_teh")]
++		public const uint Arabic_teh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tehmarbuta")]
++		public const uint Arabic_tehmarbuta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_thal")]
++		public const uint Arabic_thal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_theh")]
++		public const uint Arabic_theh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_tteh")]
++		public const uint Arabic_tteh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_veh")]
++		public const uint Arabic_veh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_waw")]
++		public const uint Arabic_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh")]
++		public const uint Arabic_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_yeh_baree")]
++		public const uint Arabic_yeh_baree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zah")]
++		public const uint Arabic_zah;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Arabic_zain")]
++		public const uint Arabic_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Aring")]
++		public const uint Aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AT")]
++		public const uint Armenian_AT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_AYB")]
++		public const uint Armenian_AYB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_BEN")]
++		public const uint Armenian_BEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_CHA")]
++		public const uint Armenian_CHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DA")]
++		public const uint Armenian_DA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_DZA")]
++		public const uint Armenian_DZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_E")]
++		public const uint Armenian_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_FE")]
++		public const uint Armenian_FE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GHAT")]
++		public const uint Armenian_GHAT;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_GIM")]
++		public const uint Armenian_GIM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HI")]
++		public const uint Armenian_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_HO")]
++		public const uint Armenian_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_INI")]
++		public const uint Armenian_INI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_JE")]
++		public const uint Armenian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KE")]
++		public const uint Armenian_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KEN")]
++		public const uint Armenian_KEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_KHE")]
++		public const uint Armenian_KHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_LYUN")]
++		public const uint Armenian_LYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_MEN")]
++		public const uint Armenian_MEN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_NU")]
++		public const uint Armenian_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_O")]
++		public const uint Armenian_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PE")]
++		public const uint Armenian_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_PYUR")]
++		public const uint Armenian_PYUR;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RA")]
++		public const uint Armenian_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_RE")]
++		public const uint Armenian_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SE")]
++		public const uint Armenian_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_SHA")]
++		public const uint Armenian_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TCHE")]
++		public const uint Armenian_TCHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TO")]
++		public const uint Armenian_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSA")]
++		public const uint Armenian_TSA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TSO")]
++		public const uint Armenian_TSO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_TYUN")]
++		public const uint Armenian_TYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VEV")]
++		public const uint Armenian_VEV;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VO")]
++		public const uint Armenian_VO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_VYUN")]
++		public const uint Armenian_VYUN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_YECH")]
++		public const uint Armenian_YECH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZA")]
++		public const uint Armenian_ZA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ZHE")]
++		public const uint Armenian_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_accent")]
++		public const uint Armenian_accent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_amanak")]
++		public const uint Armenian_amanak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_apostrophe")]
++		public const uint Armenian_apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_at")]
++		public const uint Armenian_at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ayb")]
++		public const uint Armenian_ayb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ben")]
++		public const uint Armenian_ben;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_but")]
++		public const uint Armenian_but;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_cha")]
++		public const uint Armenian_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_da")]
++		public const uint Armenian_da;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_dza")]
++		public const uint Armenian_dza;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_e")]
++		public const uint Armenian_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_exclam")]
++		public const uint Armenian_exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_fe")]
++		public const uint Armenian_fe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_full_stop")]
++		public const uint Armenian_full_stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ghat")]
++		public const uint Armenian_ghat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_gim")]
++		public const uint Armenian_gim;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hi")]
++		public const uint Armenian_hi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ho")]
++		public const uint Armenian_ho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_hyphen")]
++		public const uint Armenian_hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ini")]
++		public const uint Armenian_ini;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_je")]
++		public const uint Armenian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ke")]
++		public const uint Armenian_ke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ken")]
++		public const uint Armenian_ken;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_khe")]
++		public const uint Armenian_khe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ligature_ew")]
++		public const uint Armenian_ligature_ew;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_lyun")]
++		public const uint Armenian_lyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_men")]
++		public const uint Armenian_men;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_nu")]
++		public const uint Armenian_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_o")]
++		public const uint Armenian_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_paruyk")]
++		public const uint Armenian_paruyk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pe")]
++		public const uint Armenian_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_pyur")]
++		public const uint Armenian_pyur;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_question")]
++		public const uint Armenian_question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_ra")]
++		public const uint Armenian_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_re")]
++		public const uint Armenian_re;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_se")]
++		public const uint Armenian_se;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_separation_mark")]
++		public const uint Armenian_separation_mark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_sha")]
++		public const uint Armenian_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_shesht")]
++		public const uint Armenian_shesht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tche")]
++		public const uint Armenian_tche;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_to")]
++		public const uint Armenian_to;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tsa")]
++		public const uint Armenian_tsa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tso")]
++		public const uint Armenian_tso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_tyun")]
++		public const uint Armenian_tyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_verjaket")]
++		public const uint Armenian_verjaket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vev")]
++		public const uint Armenian_vev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vo")]
++		public const uint Armenian_vo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_vyun")]
++		public const uint Armenian_vyun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yech")]
++		public const uint Armenian_yech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_yentamna")]
++		public const uint Armenian_yentamna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_za")]
++		public const uint Armenian_za;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Armenian_zhe")]
++		public const uint Armenian_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Atilde")]
++		public const uint Atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudibleBell_Enable")]
++		public const uint AudibleBell_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioCycleTrack")]
++		public const uint AudioCycleTrack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioForward")]
++		public const uint AudioForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioLowerVolume")]
++		public const uint AudioLowerVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMedia")]
++		public const uint AudioMedia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMicMute")]
++		public const uint AudioMicMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioMute")]
++		public const uint AudioMute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioNext")]
++		public const uint AudioNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPause")]
++		public const uint AudioPause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPlay")]
++		public const uint AudioPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioPrev")]
++		public const uint AudioPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRaiseVolume")]
++		public const uint AudioRaiseVolume;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRandomPlay")]
++		public const uint AudioRandomPlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRecord")]
++		public const uint AudioRecord;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRepeat")]
++		public const uint AudioRepeat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioRewind")]
++		public const uint AudioRewind;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_AudioStop")]
++		public const uint AudioStop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Away")]
++		public const uint Away;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_B")]
++		public const uint B;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Babovedot")]
++		public const uint Babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Back")]
++		public const uint Back;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackForward")]
++		public const uint BackForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BackSpace")]
++		public const uint BackSpace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Battery")]
++		public const uint Battery;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Begin")]
++		public const uint Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Blue")]
++		public const uint Blue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Bluetooth")]
++		public const uint Bluetooth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Book")]
++		public const uint Book;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BounceKeys_Enable")]
++		public const uint BounceKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Break")]
++		public const uint Break;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_BrightnessAdjust")]
++		public const uint BrightnessAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_SHORTU")]
++		public const uint Byelorussian_SHORTU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Byelorussian_shortu")]
++		public const uint Byelorussian_shortu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C")]
++		public const uint C;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CD")]
++		public const uint CD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CH")]
++		public const uint CH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_H")]
++		public const uint C_H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_C_h")]
++		public const uint C_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cabovedot")]
++		public const uint Cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cacute")]
++		public const uint Cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calculator")]
++		public const uint Calculator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Calendar")]
++		public const uint Calendar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cancel")]
++		public const uint Cancel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Caps_Lock")]
++		public const uint Caps_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccaron")]
++		public const uint Ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccedilla")]
++		public const uint Ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ccircumflex")]
++		public const uint Ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ch")]
++		public const uint Ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Clear")]
++		public const uint Clear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ClearGrab")]
++		public const uint ClearGrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Close")]
++		public const uint Close;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Codeinput")]
++		public const uint Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ColonSign")]
++		public const uint ColonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Community")]
++		public const uint Community;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ContrastAdjust")]
++		public const uint ContrastAdjust;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_L")]
++		public const uint Control_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Control_R")]
++		public const uint Control_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Copy")]
++		public const uint Copy;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CruzeiroSign")]
++		public const uint CruzeiroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cut")]
++		public const uint Cut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_CycleAngle")]
++		public const uint CycleAngle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_A")]
++		public const uint Cyrillic_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_BE")]
++		public const uint Cyrillic_BE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE")]
++		public const uint Cyrillic_CHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_descender")]
++		public const uint Cyrillic_CHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_CHE_vertstroke")]
++		public const uint Cyrillic_CHE_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DE")]
++		public const uint Cyrillic_DE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_DZHE")]
++		public const uint Cyrillic_DZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_E")]
++		public const uint Cyrillic_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EF")]
++		public const uint Cyrillic_EF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EL")]
++		public const uint Cyrillic_EL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EM")]
++		public const uint Cyrillic_EM;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN")]
++		public const uint Cyrillic_EN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_EN_descender")]
++		public const uint Cyrillic_EN_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ER")]
++		public const uint Cyrillic_ER;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ES")]
++		public const uint Cyrillic_ES;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE")]
++		public const uint Cyrillic_GHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_GHE_bar")]
++		public const uint Cyrillic_GHE_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA")]
++		public const uint Cyrillic_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HARDSIGN")]
++		public const uint Cyrillic_HARDSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_HA_descender")]
++		public const uint Cyrillic_HA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I")]
++		public const uint Cyrillic_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IE")]
++		public const uint Cyrillic_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_IO")]
++		public const uint Cyrillic_IO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_I_macron")]
++		public const uint Cyrillic_I_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_JE")]
++		public const uint Cyrillic_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA")]
++		public const uint Cyrillic_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_descender")]
++		public const uint Cyrillic_KA_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_KA_vertstroke")]
++		public const uint Cyrillic_KA_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_LJE")]
++		public const uint Cyrillic_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_NJE")]
++		public const uint Cyrillic_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O")]
++		public const uint Cyrillic_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_O_bar")]
++		public const uint Cyrillic_O_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_PE")]
++		public const uint Cyrillic_PE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SCHWA")]
++		public const uint Cyrillic_SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHA")]
++		public const uint Cyrillic_SHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHCHA")]
++		public const uint Cyrillic_SHCHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHHA")]
++		public const uint Cyrillic_SHHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SHORTI")]
++		public const uint Cyrillic_SHORTI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_SOFTSIGN")]
++		public const uint Cyrillic_SOFTSIGN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TE")]
++		public const uint Cyrillic_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_TSE")]
++		public const uint Cyrillic_TSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U")]
++		public const uint Cyrillic_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_macron")]
++		public const uint Cyrillic_U_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight")]
++		public const uint Cyrillic_U_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_U_straight_bar")]
++		public const uint Cyrillic_U_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_VE")]
++		public const uint Cyrillic_VE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YA")]
++		public const uint Cyrillic_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YERU")]
++		public const uint Cyrillic_YERU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_YU")]
++		public const uint Cyrillic_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZE")]
++		public const uint Cyrillic_ZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE")]
++		public const uint Cyrillic_ZHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ZHE_descender")]
++		public const uint Cyrillic_ZHE_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_a")]
++		public const uint Cyrillic_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_be")]
++		public const uint Cyrillic_be;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che")]
++		public const uint Cyrillic_che;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_descender")]
++		public const uint Cyrillic_che_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_che_vertstroke")]
++		public const uint Cyrillic_che_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_de")]
++		public const uint Cyrillic_de;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_dzhe")]
++		public const uint Cyrillic_dzhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_e")]
++		public const uint Cyrillic_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ef")]
++		public const uint Cyrillic_ef;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_el")]
++		public const uint Cyrillic_el;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_em")]
++		public const uint Cyrillic_em;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en")]
++		public const uint Cyrillic_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_en_descender")]
++		public const uint Cyrillic_en_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_er")]
++		public const uint Cyrillic_er;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_es")]
++		public const uint Cyrillic_es;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe")]
++		public const uint Cyrillic_ghe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ghe_bar")]
++		public const uint Cyrillic_ghe_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha")]
++		public const uint Cyrillic_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ha_descender")]
++		public const uint Cyrillic_ha_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_hardsign")]
++		public const uint Cyrillic_hardsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i")]
++		public const uint Cyrillic_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_i_macron")]
++		public const uint Cyrillic_i_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ie")]
++		public const uint Cyrillic_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_io")]
++		public const uint Cyrillic_io;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_je")]
++		public const uint Cyrillic_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka")]
++		public const uint Cyrillic_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_descender")]
++		public const uint Cyrillic_ka_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ka_vertstroke")]
++		public const uint Cyrillic_ka_vertstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_lje")]
++		public const uint Cyrillic_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_nje")]
++		public const uint Cyrillic_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o")]
++		public const uint Cyrillic_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_o_bar")]
++		public const uint Cyrillic_o_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_pe")]
++		public const uint Cyrillic_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_schwa")]
++		public const uint Cyrillic_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_sha")]
++		public const uint Cyrillic_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shcha")]
++		public const uint Cyrillic_shcha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shha")]
++		public const uint Cyrillic_shha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_shorti")]
++		public const uint Cyrillic_shorti;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_softsign")]
++		public const uint Cyrillic_softsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_te")]
++		public const uint Cyrillic_te;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_tse")]
++		public const uint Cyrillic_tse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u")]
++		public const uint Cyrillic_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_macron")]
++		public const uint Cyrillic_u_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight")]
++		public const uint Cyrillic_u_straight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_u_straight_bar")]
++		public const uint Cyrillic_u_straight_bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ve")]
++		public const uint Cyrillic_ve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ya")]
++		public const uint Cyrillic_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yeru")]
++		public const uint Cyrillic_yeru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_yu")]
++		public const uint Cyrillic_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_ze")]
++		public const uint Cyrillic_ze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe")]
++		public const uint Cyrillic_zhe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Cyrillic_zhe_descender")]
++		public const uint Cyrillic_zhe_descender;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_D")]
++		public const uint D;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DOS")]
++		public const uint DOS;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dabovedot")]
++		public const uint Dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dcaron")]
++		public const uint Dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Delete")]
++		public const uint Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Display")]
++		public const uint Display;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Documents")]
++		public const uint Documents;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_DongSign")]
++		public const uint DongSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Down")]
++		public const uint Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Dstroke")]
++		public const uint Dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_E")]
++		public const uint E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ENG")]
++		public const uint ENG;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ETH")]
++		public const uint ETH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EZH")]
++		public const uint EZH;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eabovedot")]
++		public const uint Eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eacute")]
++		public const uint Eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ebelowdot")]
++		public const uint Ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecaron")]
++		public const uint Ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflex")]
++		public const uint Ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexacute")]
++		public const uint Ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexbelowdot")]
++		public const uint Ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexgrave")]
++		public const uint Ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflexhook")]
++		public const uint Ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ecircumflextilde")]
++		public const uint Ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EcuSign")]
++		public const uint EcuSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ediaeresis")]
++		public const uint Ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Egrave")]
++		public const uint Egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ehook")]
++		public const uint Ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_Shift")]
++		public const uint Eisu_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eisu_toggle")]
++		public const uint Eisu_toggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eject")]
++		public const uint Eject;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Emacron")]
++		public const uint Emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_End")]
++		public const uint End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eogonek")]
++		public const uint Eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Escape")]
++		public const uint Escape;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Eth")]
++		public const uint Eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Etilde")]
++		public const uint Etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_EuroSign")]
++		public const uint EuroSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Excel")]
++		public const uint Excel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Execute")]
++		public const uint Execute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Explorer")]
++		public const uint Explorer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F")]
++		public const uint F;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F1")]
++		public const uint F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F10")]
++		public const uint F10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F11")]
++		public const uint F11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F12")]
++		public const uint F12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F13")]
++		public const uint F13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F14")]
++		public const uint F14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F15")]
++		public const uint F15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F16")]
++		public const uint F16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F17")]
++		public const uint F17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F18")]
++		public const uint F18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F19")]
++		public const uint F19;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F2")]
++		public const uint F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F20")]
++		public const uint F20;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F21")]
++		public const uint F21;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F22")]
++		public const uint F22;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F23")]
++		public const uint F23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F24")]
++		public const uint F24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F25")]
++		public const uint F25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F26")]
++		public const uint F26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F27")]
++		public const uint F27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F28")]
++		public const uint F28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F29")]
++		public const uint F29;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F3")]
++		public const uint F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F30")]
++		public const uint F30;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F31")]
++		public const uint F31;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F32")]
++		public const uint F32;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F33")]
++		public const uint F33;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F34")]
++		public const uint F34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F35")]
++		public const uint F35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F4")]
++		public const uint F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F5")]
++		public const uint F5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F6")]
++		public const uint F6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F7")]
++		public const uint F7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F8")]
++		public const uint F8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_F9")]
++		public const uint F9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FFrancSign")]
++		public const uint FFrancSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Fabovedot")]
++		public const uint Fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_0")]
++		public const uint Farsi_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_1")]
++		public const uint Farsi_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_2")]
++		public const uint Farsi_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_3")]
++		public const uint Farsi_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_4")]
++		public const uint Farsi_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_5")]
++		public const uint Farsi_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_6")]
++		public const uint Farsi_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_7")]
++		public const uint Farsi_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_8")]
++		public const uint Farsi_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_9")]
++		public const uint Farsi_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Farsi_yeh")]
++		public const uint Farsi_yeh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Favorites")]
++		public const uint Favorites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Finance")]
++		public const uint Finance;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Find")]
++		public const uint Find;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_First_Virtual_Screen")]
++		public const uint First_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Forward")]
++		public const uint Forward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameBack")]
++		public const uint FrameBack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_FrameForward")]
++		public const uint FrameForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_G")]
++		public const uint G;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gabovedot")]
++		public const uint Gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Game")]
++		public const uint Game;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gbreve")]
++		public const uint Gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcaron")]
++		public const uint Gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcedilla")]
++		public const uint Gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Gcircumflex")]
++		public const uint Gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_an")]
++		public const uint Georgian_an;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ban")]
++		public const uint Georgian_ban;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_can")]
++		public const uint Georgian_can;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_char")]
++		public const uint Georgian_char;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_chin")]
++		public const uint Georgian_chin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_cil")]
++		public const uint Georgian_cil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_don")]
++		public const uint Georgian_don;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_en")]
++		public const uint Georgian_en;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_fi")]
++		public const uint Georgian_fi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_gan")]
++		public const uint Georgian_gan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_ghan")]
++		public const uint Georgian_ghan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hae")]
++		public const uint Georgian_hae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_har")]
++		public const uint Georgian_har;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_he")]
++		public const uint Georgian_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hie")]
++		public const uint Georgian_hie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_hoe")]
++		public const uint Georgian_hoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_in")]
++		public const uint Georgian_in;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jhan")]
++		public const uint Georgian_jhan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_jil")]
++		public const uint Georgian_jil;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_kan")]
++		public const uint Georgian_kan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_khar")]
++		public const uint Georgian_khar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_las")]
++		public const uint Georgian_las;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_man")]
++		public const uint Georgian_man;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_nar")]
++		public const uint Georgian_nar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_on")]
++		public const uint Georgian_on;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_par")]
++		public const uint Georgian_par;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_phar")]
++		public const uint Georgian_phar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_qar")]
++		public const uint Georgian_qar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_rae")]
++		public const uint Georgian_rae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_san")]
++		public const uint Georgian_san;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_shin")]
++		public const uint Georgian_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tan")]
++		public const uint Georgian_tan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_tar")]
++		public const uint Georgian_tar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_un")]
++		public const uint Georgian_un;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_vin")]
++		public const uint Georgian_vin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_we")]
++		public const uint Georgian_we;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_xan")]
++		public const uint Georgian_xan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zen")]
++		public const uint Georgian_zen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Georgian_zhar")]
++		public const uint Georgian_zhar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Go")]
++		public const uint Go;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHA")]
++		public const uint Greek_ALPHA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ALPHAaccent")]
++		public const uint Greek_ALPHAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_BETA")]
++		public const uint Greek_BETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_CHI")]
++		public const uint Greek_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_DELTA")]
++		public const uint Greek_DELTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILON")]
++		public const uint Greek_EPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_EPSILONaccent")]
++		public const uint Greek_EPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETA")]
++		public const uint Greek_ETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ETAaccent")]
++		public const uint Greek_ETAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_GAMMA")]
++		public const uint Greek_GAMMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTA")]
++		public const uint Greek_IOTA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAaccent")]
++		public const uint Greek_IOTAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdiaeresis")]
++		public const uint Greek_IOTAdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_IOTAdieresis")]
++		public const uint Greek_IOTAdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_KAPPA")]
++		public const uint Greek_KAPPA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMBDA")]
++		public const uint Greek_LAMBDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_LAMDA")]
++		public const uint Greek_LAMDA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_MU")]
++		public const uint Greek_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_NU")]
++		public const uint Greek_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGA")]
++		public const uint Greek_OMEGA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMEGAaccent")]
++		public const uint Greek_OMEGAaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRON")]
++		public const uint Greek_OMICRON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_OMICRONaccent")]
++		public const uint Greek_OMICRONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PHI")]
++		public const uint Greek_PHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PI")]
++		public const uint Greek_PI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_PSI")]
++		public const uint Greek_PSI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_RHO")]
++		public const uint Greek_RHO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_SIGMA")]
++		public const uint Greek_SIGMA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_TAU")]
++		public const uint Greek_TAU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_THETA")]
++		public const uint Greek_THETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILON")]
++		public const uint Greek_UPSILON;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONaccent")]
++		public const uint Greek_UPSILONaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_UPSILONdieresis")]
++		public const uint Greek_UPSILONdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_XI")]
++		public const uint Greek_XI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_ZETA")]
++		public const uint Greek_ZETA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_accentdieresis")]
++		public const uint Greek_accentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alpha")]
++		public const uint Greek_alpha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_alphaaccent")]
++		public const uint Greek_alphaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_beta")]
++		public const uint Greek_beta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_chi")]
++		public const uint Greek_chi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_delta")]
++		public const uint Greek_delta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilon")]
++		public const uint Greek_epsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_epsilonaccent")]
++		public const uint Greek_epsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_eta")]
++		public const uint Greek_eta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_etaaccent")]
++		public const uint Greek_etaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_finalsmallsigma")]
++		public const uint Greek_finalsmallsigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_gamma")]
++		public const uint Greek_gamma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_horizbar")]
++		public const uint Greek_horizbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iota")]
++		public const uint Greek_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccent")]
++		public const uint Greek_iotaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotaaccentdieresis")]
++		public const uint Greek_iotaaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_iotadieresis")]
++		public const uint Greek_iotadieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_kappa")]
++		public const uint Greek_kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lambda")]
++		public const uint Greek_lambda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_lamda")]
++		public const uint Greek_lamda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_mu")]
++		public const uint Greek_mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_nu")]
++		public const uint Greek_nu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omega")]
++		public const uint Greek_omega;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omegaaccent")]
++		public const uint Greek_omegaaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicron")]
++		public const uint Greek_omicron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_omicronaccent")]
++		public const uint Greek_omicronaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_phi")]
++		public const uint Greek_phi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_pi")]
++		public const uint Greek_pi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_psi")]
++		public const uint Greek_psi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_rho")]
++		public const uint Greek_rho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_sigma")]
++		public const uint Greek_sigma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_switch")]
++		public const uint Greek_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_tau")]
++		public const uint Greek_tau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_theta")]
++		public const uint Greek_theta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilon")]
++		public const uint Greek_upsilon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccent")]
++		public const uint Greek_upsilonaccent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilonaccentdieresis")]
++		public const uint Greek_upsilonaccentdieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_upsilondieresis")]
++		public const uint Greek_upsilondieresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_xi")]
++		public const uint Greek_xi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Greek_zeta")]
++		public const uint Greek_zeta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Green")]
++		public const uint Green;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_H")]
++		public const uint H;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul")]
++		public const uint Hangul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_A")]
++		public const uint Hangul_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AE")]
++		public const uint Hangul_AE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeA")]
++		public const uint Hangul_AraeA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_AraeAE")]
++		public const uint Hangul_AraeAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Banja")]
++		public const uint Hangul_Banja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Cieuc")]
++		public const uint Hangul_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Codeinput")]
++		public const uint Hangul_Codeinput;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Dikeud")]
++		public const uint Hangul_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_E")]
++		public const uint Hangul_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EO")]
++		public const uint Hangul_EO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_EU")]
++		public const uint Hangul_EU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_End")]
++		public const uint Hangul_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hanja")]
++		public const uint Hangul_Hanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Hieuh")]
++		public const uint Hangul_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_I")]
++		public const uint Hangul_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Ieung")]
++		public const uint Hangul_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Cieuc")]
++		public const uint Hangul_J_Cieuc;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Dikeud")]
++		public const uint Hangul_J_Dikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Hieuh")]
++		public const uint Hangul_J_Hieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Ieung")]
++		public const uint Hangul_J_Ieung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Jieuj")]
++		public const uint Hangul_J_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Khieuq")]
++		public const uint Hangul_J_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Kiyeog")]
++		public const uint Hangul_J_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KiyeogSios")]
++		public const uint Hangul_J_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_KkogjiDalrinIeung")]
++		public const uint Hangul_J_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Mieum")]
++		public const uint Hangul_J_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Nieun")]
++		public const uint Hangul_J_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunHieuh")]
++		public const uint Hangul_J_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_NieunJieuj")]
++		public const uint Hangul_J_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PanSios")]
++		public const uint Hangul_J_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Phieuf")]
++		public const uint Hangul_J_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Pieub")]
++		public const uint Hangul_J_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_PieubSios")]
++		public const uint Hangul_J_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Rieul")]
++		public const uint Hangul_J_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulHieuh")]
++		public const uint Hangul_J_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulKiyeog")]
++		public const uint Hangul_J_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulMieum")]
++		public const uint Hangul_J_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPhieuf")]
++		public const uint Hangul_J_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulPieub")]
++		public const uint Hangul_J_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulSios")]
++		public const uint Hangul_J_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_RieulTieut")]
++		public const uint Hangul_J_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Sios")]
++		public const uint Hangul_J_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangKiyeog")]
++		public const uint Hangul_J_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_SsangSios")]
++		public const uint Hangul_J_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_Tieut")]
++		public const uint Hangul_J_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_J_YeorinHieuh")]
++		public const uint Hangul_J_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jamo")]
++		public const uint Hangul_Jamo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jeonja")]
++		public const uint Hangul_Jeonja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Jieuj")]
++		public const uint Hangul_Jieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Khieuq")]
++		public const uint Hangul_Khieuq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Kiyeog")]
++		public const uint Hangul_Kiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KiyeogSios")]
++		public const uint Hangul_KiyeogSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_KkogjiDalrinIeung")]
++		public const uint Hangul_KkogjiDalrinIeung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Mieum")]
++		public const uint Hangul_Mieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_MultipleCandidate")]
++		public const uint Hangul_MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Nieun")]
++		public const uint Hangul_Nieun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunHieuh")]
++		public const uint Hangul_NieunHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_NieunJieuj")]
++		public const uint Hangul_NieunJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_O")]
++		public const uint Hangul_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_OE")]
++		public const uint Hangul_OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PanSios")]
++		public const uint Hangul_PanSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Phieuf")]
++		public const uint Hangul_Phieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Pieub")]
++		public const uint Hangul_Pieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PieubSios")]
++		public const uint Hangul_PieubSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PostHanja")]
++		public const uint Hangul_PostHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreHanja")]
++		public const uint Hangul_PreHanja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_PreviousCandidate")]
++		public const uint Hangul_PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Rieul")]
++		public const uint Hangul_Rieul;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulHieuh")]
++		public const uint Hangul_RieulHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulKiyeog")]
++		public const uint Hangul_RieulKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulMieum")]
++		public const uint Hangul_RieulMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPhieuf")]
++		public const uint Hangul_RieulPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulPieub")]
++		public const uint Hangul_RieulPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulSios")]
++		public const uint Hangul_RieulSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulTieut")]
++		public const uint Hangul_RieulTieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_RieulYeorinHieuh")]
++		public const uint Hangul_RieulYeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Romaja")]
++		public const uint Hangul_Romaja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SingleCandidate")]
++		public const uint Hangul_SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Sios")]
++		public const uint Hangul_Sios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Special")]
++		public const uint Hangul_Special;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangDikeud")]
++		public const uint Hangul_SsangDikeud;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangJieuj")]
++		public const uint Hangul_SsangJieuj;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangKiyeog")]
++		public const uint Hangul_SsangKiyeog;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangPieub")]
++		public const uint Hangul_SsangPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SsangSios")]
++		public const uint Hangul_SsangSios;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Start")]
++		public const uint Hangul_Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumMieum")]
++		public const uint Hangul_SunkyeongeumMieum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPhieuf")]
++		public const uint Hangul_SunkyeongeumPhieuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_SunkyeongeumPieub")]
++		public const uint Hangul_SunkyeongeumPieub;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_Tieut")]
++		public const uint Hangul_Tieut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_U")]
++		public const uint Hangul_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WA")]
++		public const uint Hangul_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WAE")]
++		public const uint Hangul_WAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WE")]
++		public const uint Hangul_WE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WEO")]
++		public const uint Hangul_WEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_WI")]
++		public const uint Hangul_WI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YA")]
++		public const uint Hangul_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YAE")]
++		public const uint Hangul_YAE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YE")]
++		public const uint Hangul_YE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YEO")]
++		public const uint Hangul_YEO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YI")]
++		public const uint Hangul_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YO")]
++		public const uint Hangul_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YU")]
++		public const uint Hangul_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_YeorinHieuh")]
++		public const uint Hangul_YeorinHieuh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hangul_switch")]
++		public const uint Hangul_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hankaku")]
++		public const uint Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hcircumflex")]
++		public const uint Hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hebrew_switch")]
++		public const uint Hebrew_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Help")]
++		public const uint Help;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan")]
++		public const uint Henkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Henkan_Mode")]
++		public const uint Henkan_Mode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hibernate")]
++		public const uint Hibernate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana")]
++		public const uint Hiragana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hiragana_Katakana")]
++		public const uint Hiragana_Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_History")]
++		public const uint History;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Home")]
++		public const uint Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HomePage")]
++		public const uint HomePage;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_HotLinks")]
++		public const uint HotLinks;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hstroke")]
++		public const uint Hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_L")]
++		public const uint Hyper_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Hyper_R")]
++		public const uint Hyper_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_I")]
++		public const uint I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Center_Object")]
++		public const uint ISO_Center_Object;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Continuous_Underline")]
++		public const uint ISO_Continuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Discontinuous_Underline")]
++		public const uint ISO_Discontinuous_Underline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Emphasize")]
++		public const uint ISO_Emphasize;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Enter")]
++		public const uint ISO_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Down")]
++		public const uint ISO_Fast_Cursor_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Left")]
++		public const uint ISO_Fast_Cursor_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Right")]
++		public const uint ISO_Fast_Cursor_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Fast_Cursor_Up")]
++		public const uint ISO_Fast_Cursor_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group")]
++		public const uint ISO_First_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_First_Group_Lock")]
++		public const uint ISO_First_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Latch")]
++		public const uint ISO_Group_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Lock")]
++		public const uint ISO_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Group_Shift")]
++		public const uint ISO_Group_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group")]
++		public const uint ISO_Last_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Last_Group_Lock")]
++		public const uint ISO_Last_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Left_Tab")]
++		public const uint ISO_Left_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level2_Latch")]
++		public const uint ISO_Level2_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Latch")]
++		public const uint ISO_Level3_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Lock")]
++		public const uint ISO_Level3_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level3_Shift")]
++		public const uint ISO_Level3_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Latch")]
++		public const uint ISO_Level5_Latch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Lock")]
++		public const uint ISO_Level5_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Level5_Shift")]
++		public const uint ISO_Level5_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Lock")]
++		public const uint ISO_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Down")]
++		public const uint ISO_Move_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Move_Line_Up")]
++		public const uint ISO_Move_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group")]
++		public const uint ISO_Next_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Next_Group_Lock")]
++		public const uint ISO_Next_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Down")]
++		public const uint ISO_Partial_Line_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Line_Up")]
++		public const uint ISO_Partial_Line_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Left")]
++		public const uint ISO_Partial_Space_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Partial_Space_Right")]
++		public const uint ISO_Partial_Space_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group")]
++		public const uint ISO_Prev_Group;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Prev_Group_Lock")]
++		public const uint ISO_Prev_Group_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Both_Margins")]
++		public const uint ISO_Release_Both_Margins;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Left")]
++		public const uint ISO_Release_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Release_Margin_Right")]
++		public const uint ISO_Release_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Left")]
++		public const uint ISO_Set_Margin_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ISO_Set_Margin_Right")]
++		public const uint ISO_Set_Margin_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iabovedot")]
++		public const uint Iabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iacute")]
++		public const uint Iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibelowdot")]
++		public const uint Ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ibreve")]
++		public const uint Ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Icircumflex")]
++		public const uint Icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Idiaeresis")]
++		public const uint Idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Igrave")]
++		public const uint Igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ihook")]
++		public const uint Ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Imacron")]
++		public const uint Imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Insert")]
++		public const uint Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Iogonek")]
++		public const uint Iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Itilde")]
++		public const uint Itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_J")]
++		public const uint J;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Jcircumflex")]
++		public const uint Jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_K")]
++		public const uint K;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_0")]
++		public const uint KP_0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_1")]
++		public const uint KP_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_2")]
++		public const uint KP_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_3")]
++		public const uint KP_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_4")]
++		public const uint KP_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_5")]
++		public const uint KP_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_6")]
++		public const uint KP_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_7")]
++		public const uint KP_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_8")]
++		public const uint KP_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_9")]
++		public const uint KP_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Add")]
++		public const uint KP_Add;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Begin")]
++		public const uint KP_Begin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Decimal")]
++		public const uint KP_Decimal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Delete")]
++		public const uint KP_Delete;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Divide")]
++		public const uint KP_Divide;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Down")]
++		public const uint KP_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_End")]
++		public const uint KP_End;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Enter")]
++		public const uint KP_Enter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Equal")]
++		public const uint KP_Equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F1")]
++		public const uint KP_F1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F2")]
++		public const uint KP_F2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F3")]
++		public const uint KP_F3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_F4")]
++		public const uint KP_F4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Home")]
++		public const uint KP_Home;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Insert")]
++		public const uint KP_Insert;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Left")]
++		public const uint KP_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Multiply")]
++		public const uint KP_Multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Next")]
++		public const uint KP_Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Down")]
++		public const uint KP_Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Page_Up")]
++		public const uint KP_Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Prior")]
++		public const uint KP_Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Right")]
++		public const uint KP_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Separator")]
++		public const uint KP_Separator;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Space")]
++		public const uint KP_Space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Subtract")]
++		public const uint KP_Subtract;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Tab")]
++		public const uint KP_Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KP_Up")]
++		public const uint KP_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Lock")]
++		public const uint Kana_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kana_Shift")]
++		public const uint Kana_Shift;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji")]
++		public const uint Kanji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kanji_Bangou")]
++		public const uint Kanji_Bangou;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Katakana")]
++		public const uint Katakana;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessDown")]
++		public const uint KbdBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdBrightnessUp")]
++		public const uint KbdBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_KbdLightOnOff")]
++		public const uint KbdLightOnOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Kcedilla")]
++		public const uint Kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Korean_Won")]
++		public const uint Korean_Won;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L")]
++		public const uint L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L1")]
++		public const uint L1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L10")]
++		public const uint L10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L2")]
++		public const uint L2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L3")]
++		public const uint L3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L4")]
++		public const uint L4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L5")]
++		public const uint L5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L6")]
++		public const uint L6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L7")]
++		public const uint L7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L8")]
++		public const uint L8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_L9")]
++		public const uint L9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lacute")]
++		public const uint Lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Last_Virtual_Screen")]
++		public const uint Last_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch0")]
++		public const uint Launch0;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch1")]
++		public const uint Launch1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch2")]
++		public const uint Launch2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch3")]
++		public const uint Launch3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch4")]
++		public const uint Launch4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch5")]
++		public const uint Launch5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch6")]
++		public const uint Launch6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch7")]
++		public const uint Launch7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch8")]
++		public const uint Launch8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Launch9")]
++		public const uint Launch9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchA")]
++		public const uint LaunchA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchB")]
++		public const uint LaunchB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchC")]
++		public const uint LaunchC;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchD")]
++		public const uint LaunchD;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchE")]
++		public const uint LaunchE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LaunchF")]
++		public const uint LaunchF;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lbelowdot")]
++		public const uint Lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcaron")]
++		public const uint Lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lcedilla")]
++		public const uint Lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Left")]
++		public const uint Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LightBulb")]
++		public const uint LightBulb;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Linefeed")]
++		public const uint Linefeed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LiraSign")]
++		public const uint LiraSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogGrabInfo")]
++		public const uint LogGrabInfo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogOff")]
++		public const uint LogOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_LogWindowTree")]
++		public const uint LogWindowTree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Lstroke")]
++		public const uint Lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_M")]
++		public const uint M;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mabovedot")]
++		public const uint Mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_DSE")]
++		public const uint Macedonia_DSE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_GJE")]
++		public const uint Macedonia_GJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_KJE")]
++		public const uint Macedonia_KJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_dse")]
++		public const uint Macedonia_dse;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_gje")]
++		public const uint Macedonia_gje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Macedonia_kje")]
++		public const uint Macedonia_kje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mae_Koho")]
++		public const uint Mae_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mail")]
++		public const uint Mail;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MailForward")]
++		public const uint MailForward;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Market")]
++		public const uint Market;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Massyo")]
++		public const uint Massyo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meeting")]
++		public const uint Meeting;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Memo")]
++		public const uint Memo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Menu")]
++		public const uint Menu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuKB")]
++		public const uint MenuKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MenuPB")]
++		public const uint MenuPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Messenger")]
++		public const uint Messenger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_L")]
++		public const uint Meta_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Meta_R")]
++		public const uint Meta_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MillSign")]
++		public const uint MillSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ModeLock")]
++		public const uint ModeLock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Mode_switch")]
++		public const uint Mode_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessDown")]
++		public const uint MonBrightnessDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MonBrightnessUp")]
++		public const uint MonBrightnessUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Accel_Enable")]
++		public const uint MouseKeys_Accel_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MouseKeys_Enable")]
++		public const uint MouseKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Muhenkan")]
++		public const uint Muhenkan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Multi_key")]
++		public const uint Multi_key;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MultipleCandidate")]
++		public const uint MultipleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Music")]
++		public const uint Music;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MyComputer")]
++		public const uint MyComputer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_MySites")]
++		public const uint MySites;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_N")]
++		public const uint N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Nacute")]
++		public const uint Nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NairaSign")]
++		public const uint NairaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncaron")]
++		public const uint Ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ncedilla")]
++		public const uint Ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_New")]
++		public const uint New;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_NewSheqelSign")]
++		public const uint NewSheqelSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_News")]
++		public const uint News;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next")]
++		public const uint Next;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_VMode")]
++		public const uint Next_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Next_Virtual_Screen")]
++		public const uint Next_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ntilde")]
++		public const uint Ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Num_Lock")]
++		public const uint Num_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_O")]
++		public const uint O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OE")]
++		public const uint OE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oacute")]
++		public const uint Oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obarred")]
++		public const uint Obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Obelowdot")]
++		public const uint Obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocaron")]
++		public const uint Ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflex")]
++		public const uint Ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexacute")]
++		public const uint Ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexbelowdot")]
++		public const uint Ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexgrave")]
++		public const uint Ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflexhook")]
++		public const uint Ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ocircumflextilde")]
++		public const uint Ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odiaeresis")]
++		public const uint Odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Odoubleacute")]
++		public const uint Odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OfficeHome")]
++		public const uint OfficeHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ograve")]
++		public const uint Ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohook")]
++		public const uint Ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorn")]
++		public const uint Ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornacute")]
++		public const uint Ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornbelowdot")]
++		public const uint Ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorngrave")]
++		public const uint Ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohornhook")]
++		public const uint Ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ohorntilde")]
++		public const uint Ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Omacron")]
++		public const uint Omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ooblique")]
++		public const uint Ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Open")]
++		public const uint Open;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_OpenURL")]
++		public const uint OpenURL;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Option")]
++		public const uint Option;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Oslash")]
++		public const uint Oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Otilde")]
++		public const uint Otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay1_Enable")]
++		public const uint Overlay1_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Overlay2_Enable")]
++		public const uint Overlay2_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_P")]
++		public const uint P;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pabovedot")]
++		public const uint Pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Down")]
++		public const uint Page_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Page_Up")]
++		public const uint Page_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Paste")]
++		public const uint Paste;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pause")]
++		public const uint Pause;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PesetaSign")]
++		public const uint PesetaSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Phone")]
++		public const uint Phone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pictures")]
++		public const uint Pictures;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Accelerate")]
++		public const uint Pointer_Accelerate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button1")]
++		public const uint Pointer_Button1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button2")]
++		public const uint Pointer_Button2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button3")]
++		public const uint Pointer_Button3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button4")]
++		public const uint Pointer_Button4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button5")]
++		public const uint Pointer_Button5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Button_Dflt")]
++		public const uint Pointer_Button_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick1")]
++		public const uint Pointer_DblClick1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick2")]
++		public const uint Pointer_DblClick2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick3")]
++		public const uint Pointer_DblClick3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick4")]
++		public const uint Pointer_DblClick4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick5")]
++		public const uint Pointer_DblClick5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DblClick_Dflt")]
++		public const uint Pointer_DblClick_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnNext")]
++		public const uint Pointer_DfltBtnNext;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DfltBtnPrev")]
++		public const uint Pointer_DfltBtnPrev;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Down")]
++		public const uint Pointer_Down;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownLeft")]
++		public const uint Pointer_DownLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_DownRight")]
++		public const uint Pointer_DownRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag1")]
++		public const uint Pointer_Drag1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag2")]
++		public const uint Pointer_Drag2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag3")]
++		public const uint Pointer_Drag3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag4")]
++		public const uint Pointer_Drag4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag5")]
++		public const uint Pointer_Drag5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Drag_Dflt")]
++		public const uint Pointer_Drag_Dflt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_EnableKeys")]
++		public const uint Pointer_EnableKeys;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Left")]
++		public const uint Pointer_Left;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Right")]
++		public const uint Pointer_Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_Up")]
++		public const uint Pointer_Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpLeft")]
++		public const uint Pointer_UpLeft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Pointer_UpRight")]
++		public const uint Pointer_UpRight;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerDown")]
++		public const uint PowerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PowerOff")]
++		public const uint PowerOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_VMode")]
++		public const uint Prev_VMode;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prev_Virtual_Screen")]
++		public const uint Prev_Virtual_Screen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_PreviousCandidate")]
++		public const uint PreviousCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Print")]
++		public const uint Print;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Prior")]
++		public const uint Prior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Q")]
++		public const uint Q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R")]
++		public const uint R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R1")]
++		public const uint R1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R10")]
++		public const uint R10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R11")]
++		public const uint R11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R12")]
++		public const uint R12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R13")]
++		public const uint R13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R14")]
++		public const uint R14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R15")]
++		public const uint R15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R2")]
++		public const uint R2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R3")]
++		public const uint R3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R4")]
++		public const uint R4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R5")]
++		public const uint R5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R6")]
++		public const uint R6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R7")]
++		public const uint R7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R8")]
++		public const uint R8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_R9")]
++		public const uint R9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Racute")]
++		public const uint Racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcaron")]
++		public const uint Rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Rcedilla")]
++		public const uint Rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Red")]
++		public const uint Red;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Redo")]
++		public const uint Redo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Refresh")]
++		public const uint Refresh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reload")]
++		public const uint Reload;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RepeatKeys_Enable")]
++		public const uint RepeatKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Reply")]
++		public const uint Reply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Return")]
++		public const uint Return;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Right")]
++		public const uint Right;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerDown")]
++		public const uint RockerDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerEnter")]
++		public const uint RockerEnter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RockerUp")]
++		public const uint RockerUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Romaji")]
++		public const uint Romaji;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotateWindows")]
++		public const uint RotateWindows;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationKB")]
++		public const uint RotationKB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RotationPB")]
++		public const uint RotationPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_RupeeSign")]
++		public const uint RupeeSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_S")]
++		public const uint S;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SCHWA")]
++		public const uint SCHWA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sabovedot")]
++		public const uint Sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sacute")]
++		public const uint Sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Save")]
++		public const uint Save;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scaron")]
++		public const uint Scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scedilla")]
++		public const uint Scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scircumflex")]
++		public const uint Scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScreenSaver")]
++		public const uint ScreenSaver;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollClick")]
++		public const uint ScrollClick;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollDown")]
++		public const uint ScrollDown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ScrollUp")]
++		public const uint ScrollUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Scroll_Lock")]
++		public const uint Scroll_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Search")]
++		public const uint Search;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Select")]
++		public const uint Select;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SelectButton")]
++		public const uint SelectButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Send")]
++		public const uint Send;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DJE")]
++		public const uint Serbian_DJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_DZE")]
++		public const uint Serbian_DZE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_JE")]
++		public const uint Serbian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_LJE")]
++		public const uint Serbian_LJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_NJE")]
++		public const uint Serbian_NJE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_TSHE")]
++		public const uint Serbian_TSHE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dje")]
++		public const uint Serbian_dje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_dze")]
++		public const uint Serbian_dze;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_je")]
++		public const uint Serbian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_lje")]
++		public const uint Serbian_lje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_nje")]
++		public const uint Serbian_nje;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Serbian_tshe")]
++		public const uint Serbian_tshe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_L")]
++		public const uint Shift_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_Lock")]
++		public const uint Shift_Lock;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shift_R")]
++		public const uint Shift_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Shop")]
++		public const uint Shop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SingleCandidate")]
++		public const uint SingleCandidate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_a")]
++		public const uint Sinh_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa")]
++		public const uint Sinh_aa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aa2")]
++		public const uint Sinh_aa2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae")]
++		public const uint Sinh_ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ae2")]
++		public const uint Sinh_ae2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee")]
++		public const uint Sinh_aee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_aee2")]
++		public const uint Sinh_aee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai")]
++		public const uint Sinh_ai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ai2")]
++		public const uint Sinh_ai2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_al")]
++		public const uint Sinh_al;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au")]
++		public const uint Sinh_au;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_au2")]
++		public const uint Sinh_au2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ba")]
++		public const uint Sinh_ba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_bha")]
++		public const uint Sinh_bha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ca")]
++		public const uint Sinh_ca;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_cha")]
++		public const uint Sinh_cha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dda")]
++		public const uint Sinh_dda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ddha")]
++		public const uint Sinh_ddha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dha")]
++		public const uint Sinh_dha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_dhha")]
++		public const uint Sinh_dhha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e")]
++		public const uint Sinh_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_e2")]
++		public const uint Sinh_e2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee")]
++		public const uint Sinh_ee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ee2")]
++		public const uint Sinh_ee2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_fa")]
++		public const uint Sinh_fa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ga")]
++		public const uint Sinh_ga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_gha")]
++		public const uint Sinh_gha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_h2")]
++		public const uint Sinh_h2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ha")]
++		public const uint Sinh_ha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i")]
++		public const uint Sinh_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_i2")]
++		public const uint Sinh_i2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii")]
++		public const uint Sinh_ii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ii2")]
++		public const uint Sinh_ii2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ja")]
++		public const uint Sinh_ja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jha")]
++		public const uint Sinh_jha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_jnya")]
++		public const uint Sinh_jnya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ka")]
++		public const uint Sinh_ka;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kha")]
++		public const uint Sinh_kha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_kunddaliya")]
++		public const uint Sinh_kunddaliya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_la")]
++		public const uint Sinh_la;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lla")]
++		public const uint Sinh_lla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu")]
++		public const uint Sinh_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_lu2")]
++		public const uint Sinh_lu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu")]
++		public const uint Sinh_luu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_luu2")]
++		public const uint Sinh_luu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ma")]
++		public const uint Sinh_ma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_mba")]
++		public const uint Sinh_mba;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_na")]
++		public const uint Sinh_na;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndda")]
++		public const uint Sinh_ndda;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ndha")]
++		public const uint Sinh_ndha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng")]
++		public const uint Sinh_ng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ng2")]
++		public const uint Sinh_ng2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nga")]
++		public const uint Sinh_nga;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nja")]
++		public const uint Sinh_nja;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nna")]
++		public const uint Sinh_nna;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_nya")]
++		public const uint Sinh_nya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o")]
++		public const uint Sinh_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_o2")]
++		public const uint Sinh_o2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo")]
++		public const uint Sinh_oo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_oo2")]
++		public const uint Sinh_oo2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pa")]
++		public const uint Sinh_pa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_pha")]
++		public const uint Sinh_pha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ra")]
++		public const uint Sinh_ra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ri")]
++		public const uint Sinh_ri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_rii")]
++		public const uint Sinh_rii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ru2")]
++		public const uint Sinh_ru2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ruu2")]
++		public const uint Sinh_ruu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sa")]
++		public const uint Sinh_sa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_sha")]
++		public const uint Sinh_sha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ssha")]
++		public const uint Sinh_ssha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tha")]
++		public const uint Sinh_tha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_thha")]
++		public const uint Sinh_thha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_tta")]
++		public const uint Sinh_tta;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ttha")]
++		public const uint Sinh_ttha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u")]
++		public const uint Sinh_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_u2")]
++		public const uint Sinh_u2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu")]
++		public const uint Sinh_uu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_uu2")]
++		public const uint Sinh_uu2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_va")]
++		public const uint Sinh_va;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sinh_ya")]
++		public const uint Sinh_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sleep")]
++		public const uint Sleep;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SlowKeys_Enable")]
++		public const uint SlowKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Spell")]
++		public const uint Spell;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_SplitScreen")]
++		public const uint SplitScreen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Standby")]
++		public const uint Standby;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Start")]
++		public const uint Start;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_StickyKeys_Enable")]
++		public const uint StickyKeys_Enable;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Stop")]
++		public const uint Stop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Subtitle")]
++		public const uint Subtitle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_L")]
++		public const uint Super_L;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Super_R")]
++		public const uint Super_R;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Support")]
++		public const uint Support;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Suspend")]
++		public const uint Suspend;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_1")]
++		public const uint Switch_VT_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_10")]
++		public const uint Switch_VT_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_11")]
++		public const uint Switch_VT_11;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_12")]
++		public const uint Switch_VT_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_2")]
++		public const uint Switch_VT_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_3")]
++		public const uint Switch_VT_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_4")]
++		public const uint Switch_VT_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_5")]
++		public const uint Switch_VT_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_6")]
++		public const uint Switch_VT_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_7")]
++		public const uint Switch_VT_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_8")]
++		public const uint Switch_VT_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Switch_VT_9")]
++		public const uint Switch_VT_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Sys_Req")]
++		public const uint Sys_Req;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_T")]
++		public const uint T;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_THORN")]
++		public const uint THORN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tab")]
++		public const uint Tab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tabovedot")]
++		public const uint Tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TaskPane")]
++		public const uint TaskPane;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcaron")]
++		public const uint Tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tcedilla")]
++		public const uint Tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminal")]
++		public const uint Terminal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Terminate_Server")]
++		public const uint Terminate_Server;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_baht")]
++		public const uint Thai_baht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_bobaimai")]
++		public const uint Thai_bobaimai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochan")]
++		public const uint Thai_chochan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochang")]
++		public const uint Thai_chochang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_choching")]
++		public const uint Thai_choching;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_chochoe")]
++		public const uint Thai_chochoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dochada")]
++		public const uint Thai_dochada;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_dodek")]
++		public const uint Thai_dodek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofa")]
++		public const uint Thai_fofa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_fofan")]
++		public const uint Thai_fofan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_hohip")]
++		public const uint Thai_hohip;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_honokhuk")]
++		public const uint Thai_honokhuk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhai")]
++		public const uint Thai_khokhai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhon")]
++		public const uint Thai_khokhon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhuat")]
++		public const uint Thai_khokhuat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khokhwai")]
++		public const uint Thai_khokhwai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_khorakhang")]
++		public const uint Thai_khorakhang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_kokai")]
++		public const uint Thai_kokai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lakkhangyao")]
++		public const uint Thai_lakkhangyao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekchet")]
++		public const uint Thai_lekchet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekha")]
++		public const uint Thai_lekha;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekhok")]
++		public const uint Thai_lekhok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekkao")]
++		public const uint Thai_lekkao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leknung")]
++		public const uint Thai_leknung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lekpaet")]
++		public const uint Thai_lekpaet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksam")]
++		public const uint Thai_leksam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksi")]
++		public const uint Thai_leksi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksong")]
++		public const uint Thai_leksong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_leksun")]
++		public const uint Thai_leksun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lochula")]
++		public const uint Thai_lochula;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_loling")]
++		public const uint Thai_loling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_lu")]
++		public const uint Thai_lu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maichattawa")]
++		public const uint Thai_maichattawa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiek")]
++		public const uint Thai_maiek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat")]
++		public const uint Thai_maihanakat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maihanakat_maitho")]
++		public const uint Thai_maihanakat_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitaikhu")]
++		public const uint Thai_maitaikhu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitho")]
++		public const uint Thai_maitho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maitri")]
++		public const uint Thai_maitri;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_maiyamok")]
++		public const uint Thai_maiyamok;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_moma")]
++		public const uint Thai_moma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ngongu")]
++		public const uint Thai_ngongu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nikhahit")]
++		public const uint Thai_nikhahit;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonen")]
++		public const uint Thai_nonen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_nonu")]
++		public const uint Thai_nonu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_oang")]
++		public const uint Thai_oang;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_paiyannoi")]
++		public const uint Thai_paiyannoi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phinthu")]
++		public const uint Thai_phinthu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophan")]
++		public const uint Thai_phophan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phophung")]
++		public const uint Thai_phophung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_phosamphao")]
++		public const uint Thai_phosamphao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_popla")]
++		public const uint Thai_popla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_rorua")]
++		public const uint Thai_rorua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_ru")]
++		public const uint Thai_ru;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraa")]
++		public const uint Thai_saraa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaa")]
++		public const uint Thai_saraaa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraae")]
++		public const uint Thai_saraae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimalai")]
++		public const uint Thai_saraaimaimalai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraaimaimuan")]
++		public const uint Thai_saraaimaimuan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraam")]
++		public const uint Thai_saraam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarae")]
++		public const uint Thai_sarae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarai")]
++		public const uint Thai_sarai;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraii")]
++		public const uint Thai_saraii;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarao")]
++		public const uint Thai_sarao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarau")]
++		public const uint Thai_sarau;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_saraue")]
++		public const uint Thai_saraue;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauee")]
++		public const uint Thai_sarauee;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sarauu")]
++		public const uint Thai_sarauu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sorusi")]
++		public const uint Thai_sorusi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosala")]
++		public const uint Thai_sosala;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_soso")]
++		public const uint Thai_soso;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_sosua")]
++		public const uint Thai_sosua;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thanthakhat")]
++		public const uint Thai_thanthakhat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thonangmontho")]
++		public const uint Thai_thonangmontho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thophuthao")]
++		public const uint Thai_thophuthao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothahan")]
++		public const uint Thai_thothahan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothan")]
++		public const uint Thai_thothan;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothong")]
++		public const uint Thai_thothong;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_thothung")]
++		public const uint Thai_thothung;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_topatak")]
++		public const uint Thai_topatak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_totao")]
++		public const uint Thai_totao;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_wowaen")]
++		public const uint Thai_wowaen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoyak")]
++		public const uint Thai_yoyak;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thai_yoying")]
++		public const uint Thai_yoying;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Thorn")]
++		public const uint Thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Time")]
++		public const uint Time;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ToDoList")]
++		public const uint ToDoList;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tools")]
++		public const uint Tools;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TopMenu")]
++		public const uint TopMenu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOff")]
++		public const uint TouchpadOff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadOn")]
++		public const uint TouchpadOn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_TouchpadToggle")]
++		public const uint TouchpadToggle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Touroku")]
++		public const uint Touroku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Travel")]
++		public const uint Travel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Tslash")]
++		public const uint Tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_U")]
++		public const uint U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UWB")]
++		public const uint UWB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uacute")]
++		public const uint Uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubelowdot")]
++		public const uint Ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ubreve")]
++		public const uint Ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ucircumflex")]
++		public const uint Ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udiaeresis")]
++		public const uint Udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Udoubleacute")]
++		public const uint Udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ugrave")]
++		public const uint Ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhook")]
++		public const uint Uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorn")]
++		public const uint Uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornacute")]
++		public const uint Uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornbelowdot")]
++		public const uint Uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorngrave")]
++		public const uint Uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhornhook")]
++		public const uint Uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uhorntilde")]
++		public const uint Uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_GHE_WITH_UPTURN")]
++		public const uint Ukrainian_GHE_WITH_UPTURN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_I")]
++		public const uint Ukrainian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_IE")]
++		public const uint Ukrainian_IE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_YI")]
++		public const uint Ukrainian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ghe_with_upturn")]
++		public const uint Ukrainian_ghe_with_upturn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_i")]
++		public const uint Ukrainian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_ie")]
++		public const uint Ukrainian_ie;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukrainian_yi")]
++		public const uint Ukrainian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_I")]
++		public const uint Ukranian_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_JE")]
++		public const uint Ukranian_JE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_YI")]
++		public const uint Ukranian_YI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_i")]
++		public const uint Ukranian_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_je")]
++		public const uint Ukranian_je;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ukranian_yi")]
++		public const uint Ukranian_yi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Umacron")]
++		public const uint Umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Undo")]
++		public const uint Undo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ungrab")]
++		public const uint Ungrab;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uogonek")]
++		public const uint Uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Up")]
++		public const uint Up;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Uring")]
++		public const uint Uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User1KB")]
++		public const uint User1KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_User2KB")]
++		public const uint User2KB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_UserPB")]
++		public const uint UserPB;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Utilde")]
++		public const uint Utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_V")]
++		public const uint V;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VendorHome")]
++		public const uint VendorHome;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Video")]
++		public const uint Video;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_View")]
++		public const uint View;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_VoidSymbol")]
++		public const uint VoidSymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_W")]
++		public const uint W;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WLAN")]
++		public const uint WLAN;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WWW")]
++		public const uint WWW;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wacute")]
++		public const uint Wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WakeUp")]
++		public const uint WakeUp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wcircumflex")]
++		public const uint Wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wdiaeresis")]
++		public const uint Wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WebCam")]
++		public const uint WebCam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Wgrave")]
++		public const uint Wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WheelButton")]
++		public const uint WheelButton;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WindowClear")]
++		public const uint WindowClear;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_WonSign")]
++		public const uint WonSign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Word")]
++		public const uint Word;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_X")]
++		public const uint X;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xabovedot")]
++		public const uint Xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Xfer")]
++		public const uint Xfer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Y")]
++		public const uint Y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yacute")]
++		public const uint Yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ybelowdot")]
++		public const uint Ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ycircumflex")]
++		public const uint Ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ydiaeresis")]
++		public const uint Ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yellow")]
++		public const uint Yellow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ygrave")]
++		public const uint Ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Yhook")]
++		public const uint Yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Ytilde")]
++		public const uint Ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Z")]
++		public const uint Z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zabovedot")]
++		public const uint Zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zacute")]
++		public const uint Zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zcaron")]
++		public const uint Zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zen_Koho")]
++		public const uint Zen_Koho;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku")]
++		public const uint Zenkaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zenkaku_Hankaku")]
++		public const uint Zenkaku_Hankaku;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomIn")]
++		public const uint ZoomIn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ZoomOut")]
++		public const uint ZoomOut;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_Zstroke")]
++		public const uint Zstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_a")]
++		public const uint a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aacute")]
++		public const uint aacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abelowdot")]
++		public const uint abelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abovedot")]
++		public const uint abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreve")]
++		public const uint abreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abreveacute")]
++		public const uint abreveacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevebelowdot")]
++		public const uint abrevebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevegrave")]
++		public const uint abrevegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevehook")]
++		public const uint abrevehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_abrevetilde")]
++		public const uint abrevetilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflex")]
++		public const uint acircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexacute")]
++		public const uint acircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexbelowdot")]
++		public const uint acircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexgrave")]
++		public const uint acircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflexhook")]
++		public const uint acircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acircumflextilde")]
++		public const uint acircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_acute")]
++		public const uint acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_adiaeresis")]
++		public const uint adiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ae")]
++		public const uint ae;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_agrave")]
++		public const uint agrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ahook")]
++		public const uint ahook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_amacron")]
++		public const uint amacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ampersand")]
++		public const uint ampersand;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aogonek")]
++		public const uint aogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_apostrophe")]
++		public const uint apostrophe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approxeq")]
++		public const uint approxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_approximate")]
++		public const uint approximate;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_aring")]
++		public const uint aring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciicircum")]
++		public const uint asciicircum;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asciitilde")]
++		public const uint asciitilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_asterisk")]
++		public const uint asterisk;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_at")]
++		public const uint at;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_atilde")]
++		public const uint atilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_b")]
++		public const uint b;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_babovedot")]
++		public const uint babovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_backslash")]
++		public const uint backslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ballotcross")]
++		public const uint ballotcross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bar")]
++		public const uint bar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_because")]
++		public const uint because;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_blank")]
++		public const uint blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botintegral")]
++		public const uint botintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftparens")]
++		public const uint botleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsqbracket")]
++		public const uint botleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botleftsummation")]
++		public const uint botleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightparens")]
++		public const uint botrightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsqbracket")]
++		public const uint botrightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botrightsummation")]
++		public const uint botrightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bott")]
++		public const uint bott;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_botvertsummationconnector")]
++		public const uint botvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceleft")]
++		public const uint braceleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braceright")]
++		public const uint braceright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketleft")]
++		public const uint bracketleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_bracketright")]
++		public const uint bracketright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_blank")]
++		public const uint braille_blank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_1")]
++		public const uint braille_dot_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_10")]
++		public const uint braille_dot_10;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_2")]
++		public const uint braille_dot_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_3")]
++		public const uint braille_dot_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_4")]
++		public const uint braille_dot_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_5")]
++		public const uint braille_dot_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_6")]
++		public const uint braille_dot_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_7")]
++		public const uint braille_dot_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_8")]
++		public const uint braille_dot_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dot_9")]
++		public const uint braille_dot_9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1")]
++		public const uint braille_dots_1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12")]
++		public const uint braille_dots_12;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123")]
++		public const uint braille_dots_123;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234")]
++		public const uint braille_dots_1234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345")]
++		public const uint braille_dots_12345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123456")]
++		public const uint braille_dots_123456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234567")]
++		public const uint braille_dots_1234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12345678")]
++		public const uint braille_dots_12345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234568")]
++		public const uint braille_dots_1234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123457")]
++		public const uint braille_dots_123457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234578")]
++		public const uint braille_dots_1234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123458")]
++		public const uint braille_dots_123458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12346")]
++		public const uint braille_dots_12346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123467")]
++		public const uint braille_dots_123467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1234678")]
++		public const uint braille_dots_1234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123468")]
++		public const uint braille_dots_123468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12347")]
++		public const uint braille_dots_12347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123478")]
++		public const uint braille_dots_123478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12348")]
++		public const uint braille_dots_12348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235")]
++		public const uint braille_dots_1235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12356")]
++		public const uint braille_dots_12356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123567")]
++		public const uint braille_dots_123567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1235678")]
++		public const uint braille_dots_1235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123568")]
++		public const uint braille_dots_123568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12357")]
++		public const uint braille_dots_12357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123578")]
++		public const uint braille_dots_123578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12358")]
++		public const uint braille_dots_12358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1236")]
++		public const uint braille_dots_1236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12367")]
++		public const uint braille_dots_12367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_123678")]
++		public const uint braille_dots_123678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12368")]
++		public const uint braille_dots_12368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1237")]
++		public const uint braille_dots_1237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12378")]
++		public const uint braille_dots_12378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1238")]
++		public const uint braille_dots_1238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124")]
++		public const uint braille_dots_124;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245")]
++		public const uint braille_dots_1245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12456")]
++		public const uint braille_dots_12456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124567")]
++		public const uint braille_dots_124567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1245678")]
++		public const uint braille_dots_1245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124568")]
++		public const uint braille_dots_124568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12457")]
++		public const uint braille_dots_12457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124578")]
++		public const uint braille_dots_124578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12458")]
++		public const uint braille_dots_12458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1246")]
++		public const uint braille_dots_1246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12467")]
++		public const uint braille_dots_12467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_124678")]
++		public const uint braille_dots_124678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12468")]
++		public const uint braille_dots_12468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1247")]
++		public const uint braille_dots_1247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12478")]
++		public const uint braille_dots_12478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1248")]
++		public const uint braille_dots_1248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125")]
++		public const uint braille_dots_125;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1256")]
++		public const uint braille_dots_1256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12567")]
++		public const uint braille_dots_12567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_125678")]
++		public const uint braille_dots_125678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12568")]
++		public const uint braille_dots_12568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1257")]
++		public const uint braille_dots_1257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12578")]
++		public const uint braille_dots_12578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1258")]
++		public const uint braille_dots_1258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_126")]
++		public const uint braille_dots_126;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1267")]
++		public const uint braille_dots_1267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_12678")]
++		public const uint braille_dots_12678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1268")]
++		public const uint braille_dots_1268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_127")]
++		public const uint braille_dots_127;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1278")]
++		public const uint braille_dots_1278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_128")]
++		public const uint braille_dots_128;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13")]
++		public const uint braille_dots_13;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134")]
++		public const uint braille_dots_134;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345")]
++		public const uint braille_dots_1345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13456")]
++		public const uint braille_dots_13456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134567")]
++		public const uint braille_dots_134567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1345678")]
++		public const uint braille_dots_1345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134568")]
++		public const uint braille_dots_134568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13457")]
++		public const uint braille_dots_13457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134578")]
++		public const uint braille_dots_134578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13458")]
++		public const uint braille_dots_13458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1346")]
++		public const uint braille_dots_1346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13467")]
++		public const uint braille_dots_13467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_134678")]
++		public const uint braille_dots_134678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13468")]
++		public const uint braille_dots_13468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1347")]
++		public const uint braille_dots_1347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13478")]
++		public const uint braille_dots_13478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1348")]
++		public const uint braille_dots_1348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135")]
++		public const uint braille_dots_135;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1356")]
++		public const uint braille_dots_1356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13567")]
++		public const uint braille_dots_13567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_135678")]
++		public const uint braille_dots_135678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13568")]
++		public const uint braille_dots_13568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1357")]
++		public const uint braille_dots_1357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13578")]
++		public const uint braille_dots_13578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1358")]
++		public const uint braille_dots_1358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_136")]
++		public const uint braille_dots_136;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1367")]
++		public const uint braille_dots_1367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_13678")]
++		public const uint braille_dots_13678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1368")]
++		public const uint braille_dots_1368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_137")]
++		public const uint braille_dots_137;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1378")]
++		public const uint braille_dots_1378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_138")]
++		public const uint braille_dots_138;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14")]
++		public const uint braille_dots_14;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145")]
++		public const uint braille_dots_145;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1456")]
++		public const uint braille_dots_1456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14567")]
++		public const uint braille_dots_14567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_145678")]
++		public const uint braille_dots_145678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14568")]
++		public const uint braille_dots_14568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1457")]
++		public const uint braille_dots_1457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14578")]
++		public const uint braille_dots_14578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1458")]
++		public const uint braille_dots_1458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_146")]
++		public const uint braille_dots_146;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1467")]
++		public const uint braille_dots_1467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_14678")]
++		public const uint braille_dots_14678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1468")]
++		public const uint braille_dots_1468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_147")]
++		public const uint braille_dots_147;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1478")]
++		public const uint braille_dots_1478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_148")]
++		public const uint braille_dots_148;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15")]
++		public const uint braille_dots_15;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_156")]
++		public const uint braille_dots_156;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1567")]
++		public const uint braille_dots_1567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_15678")]
++		public const uint braille_dots_15678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1568")]
++		public const uint braille_dots_1568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_157")]
++		public const uint braille_dots_157;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1578")]
++		public const uint braille_dots_1578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_158")]
++		public const uint braille_dots_158;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_16")]
++		public const uint braille_dots_16;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_167")]
++		public const uint braille_dots_167;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_1678")]
++		public const uint braille_dots_1678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_168")]
++		public const uint braille_dots_168;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_17")]
++		public const uint braille_dots_17;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_178")]
++		public const uint braille_dots_178;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_18")]
++		public const uint braille_dots_18;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2")]
++		public const uint braille_dots_2;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23")]
++		public const uint braille_dots_23;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234")]
++		public const uint braille_dots_234;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345")]
++		public const uint braille_dots_2345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23456")]
++		public const uint braille_dots_23456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234567")]
++		public const uint braille_dots_234567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2345678")]
++		public const uint braille_dots_2345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234568")]
++		public const uint braille_dots_234568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23457")]
++		public const uint braille_dots_23457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234578")]
++		public const uint braille_dots_234578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23458")]
++		public const uint braille_dots_23458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2346")]
++		public const uint braille_dots_2346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23467")]
++		public const uint braille_dots_23467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_234678")]
++		public const uint braille_dots_234678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23468")]
++		public const uint braille_dots_23468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2347")]
++		public const uint braille_dots_2347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23478")]
++		public const uint braille_dots_23478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2348")]
++		public const uint braille_dots_2348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235")]
++		public const uint braille_dots_235;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2356")]
++		public const uint braille_dots_2356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23567")]
++		public const uint braille_dots_23567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_235678")]
++		public const uint braille_dots_235678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23568")]
++		public const uint braille_dots_23568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2357")]
++		public const uint braille_dots_2357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23578")]
++		public const uint braille_dots_23578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2358")]
++		public const uint braille_dots_2358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_236")]
++		public const uint braille_dots_236;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2367")]
++		public const uint braille_dots_2367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_23678")]
++		public const uint braille_dots_23678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2368")]
++		public const uint braille_dots_2368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_237")]
++		public const uint braille_dots_237;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2378")]
++		public const uint braille_dots_2378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_238")]
++		public const uint braille_dots_238;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24")]
++		public const uint braille_dots_24;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245")]
++		public const uint braille_dots_245;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2456")]
++		public const uint braille_dots_2456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24567")]
++		public const uint braille_dots_24567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_245678")]
++		public const uint braille_dots_245678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24568")]
++		public const uint braille_dots_24568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2457")]
++		public const uint braille_dots_2457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24578")]
++		public const uint braille_dots_24578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2458")]
++		public const uint braille_dots_2458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_246")]
++		public const uint braille_dots_246;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2467")]
++		public const uint braille_dots_2467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_24678")]
++		public const uint braille_dots_24678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2468")]
++		public const uint braille_dots_2468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_247")]
++		public const uint braille_dots_247;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2478")]
++		public const uint braille_dots_2478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_248")]
++		public const uint braille_dots_248;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25")]
++		public const uint braille_dots_25;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_256")]
++		public const uint braille_dots_256;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2567")]
++		public const uint braille_dots_2567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_25678")]
++		public const uint braille_dots_25678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2568")]
++		public const uint braille_dots_2568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_257")]
++		public const uint braille_dots_257;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2578")]
++		public const uint braille_dots_2578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_258")]
++		public const uint braille_dots_258;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_26")]
++		public const uint braille_dots_26;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_267")]
++		public const uint braille_dots_267;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_2678")]
++		public const uint braille_dots_2678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_268")]
++		public const uint braille_dots_268;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_27")]
++		public const uint braille_dots_27;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_278")]
++		public const uint braille_dots_278;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_28")]
++		public const uint braille_dots_28;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3")]
++		public const uint braille_dots_3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34")]
++		public const uint braille_dots_34;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345")]
++		public const uint braille_dots_345;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3456")]
++		public const uint braille_dots_3456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34567")]
++		public const uint braille_dots_34567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_345678")]
++		public const uint braille_dots_345678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34568")]
++		public const uint braille_dots_34568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3457")]
++		public const uint braille_dots_3457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34578")]
++		public const uint braille_dots_34578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3458")]
++		public const uint braille_dots_3458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_346")]
++		public const uint braille_dots_346;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3467")]
++		public const uint braille_dots_3467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_34678")]
++		public const uint braille_dots_34678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3468")]
++		public const uint braille_dots_3468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_347")]
++		public const uint braille_dots_347;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3478")]
++		public const uint braille_dots_3478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_348")]
++		public const uint braille_dots_348;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35")]
++		public const uint braille_dots_35;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_356")]
++		public const uint braille_dots_356;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3567")]
++		public const uint braille_dots_3567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_35678")]
++		public const uint braille_dots_35678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3568")]
++		public const uint braille_dots_3568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_357")]
++		public const uint braille_dots_357;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3578")]
++		public const uint braille_dots_3578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_358")]
++		public const uint braille_dots_358;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_36")]
++		public const uint braille_dots_36;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_367")]
++		public const uint braille_dots_367;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_3678")]
++		public const uint braille_dots_3678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_368")]
++		public const uint braille_dots_368;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_37")]
++		public const uint braille_dots_37;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_378")]
++		public const uint braille_dots_378;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_38")]
++		public const uint braille_dots_38;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4")]
++		public const uint braille_dots_4;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45")]
++		public const uint braille_dots_45;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_456")]
++		public const uint braille_dots_456;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4567")]
++		public const uint braille_dots_4567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_45678")]
++		public const uint braille_dots_45678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4568")]
++		public const uint braille_dots_4568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_457")]
++		public const uint braille_dots_457;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4578")]
++		public const uint braille_dots_4578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_458")]
++		public const uint braille_dots_458;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_46")]
++		public const uint braille_dots_46;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_467")]
++		public const uint braille_dots_467;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_4678")]
++		public const uint braille_dots_4678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_468")]
++		public const uint braille_dots_468;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_47")]
++		public const uint braille_dots_47;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_478")]
++		public const uint braille_dots_478;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_48")]
++		public const uint braille_dots_48;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5")]
++		public const uint braille_dots_5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_56")]
++		public const uint braille_dots_56;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_567")]
++		public const uint braille_dots_567;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_5678")]
++		public const uint braille_dots_5678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_568")]
++		public const uint braille_dots_568;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_57")]
++		public const uint braille_dots_57;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_578")]
++		public const uint braille_dots_578;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_58")]
++		public const uint braille_dots_58;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_6")]
++		public const uint braille_dots_6;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_67")]
++		public const uint braille_dots_67;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_678")]
++		public const uint braille_dots_678;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_68")]
++		public const uint braille_dots_68;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_7")]
++		public const uint braille_dots_7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_78")]
++		public const uint braille_dots_78;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_braille_dots_8")]
++		public const uint braille_dots_8;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_breve")]
++		public const uint breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_brokenbar")]
++		public const uint brokenbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c")]
++		public const uint c;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_c_h")]
++		public const uint c_h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cabovedot")]
++		public const uint cabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cacute")]
++		public const uint cacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_careof")]
++		public const uint careof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caret")]
++		public const uint caret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_caron")]
++		public const uint caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccaron")]
++		public const uint ccaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccedilla")]
++		public const uint ccedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ccircumflex")]
++		public const uint ccircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cedilla")]
++		public const uint cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cent")]
++		public const uint cent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ch")]
++		public const uint ch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkerboard")]
++		public const uint checkerboard;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_checkmark")]
++		public const uint checkmark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_circle")]
++		public const uint circle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_club")]
++		public const uint club;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_colon")]
++		public const uint colon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_comma")]
++		public const uint comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_containsas")]
++		public const uint containsas;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_copyright")]
++		public const uint copyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cr")]
++		public const uint cr;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_crossinglines")]
++		public const uint crossinglines;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cuberoot")]
++		public const uint cuberoot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_currency")]
++		public const uint currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_cursor")]
++		public const uint cursor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_d")]
++		public const uint d;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dabovedot")]
++		public const uint dabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dagger")]
++		public const uint dagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dcaron")]
++		public const uint dcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_A")]
++		public const uint dead_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_E")]
++		public const uint dead_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_I")]
++		public const uint dead_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_O")]
++		public const uint dead_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_U")]
++		public const uint dead_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_a")]
++		public const uint dead_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovecomma")]
++		public const uint dead_abovecomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovedot")]
++		public const uint dead_abovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovereversedcomma")]
++		public const uint dead_abovereversedcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_abovering")]
++		public const uint dead_abovering;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_aboveverticalline")]
++		public const uint dead_aboveverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_acute")]
++		public const uint dead_acute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowbreve")]
++		public const uint dead_belowbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcircumflex")]
++		public const uint dead_belowcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowcomma")]
++		public const uint dead_belowcomma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdiaeresis")]
++		public const uint dead_belowdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowdot")]
++		public const uint dead_belowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowmacron")]
++		public const uint dead_belowmacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowring")]
++		public const uint dead_belowring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowtilde")]
++		public const uint dead_belowtilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_belowverticalline")]
++		public const uint dead_belowverticalline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_breve")]
++		public const uint dead_breve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_capital_schwa")]
++		public const uint dead_capital_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_caron")]
++		public const uint dead_caron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_cedilla")]
++		public const uint dead_cedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_circumflex")]
++		public const uint dead_circumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_currency")]
++		public const uint dead_currency;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_dasia")]
++		public const uint dead_dasia;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_diaeresis")]
++		public const uint dead_diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doubleacute")]
++		public const uint dead_doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_doublegrave")]
++		public const uint dead_doublegrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_e")]
++		public const uint dead_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_grave")]
++		public const uint dead_grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_greek")]
++		public const uint dead_greek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_hook")]
++		public const uint dead_hook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_horn")]
++		public const uint dead_horn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_i")]
++		public const uint dead_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_invertedbreve")]
++		public const uint dead_invertedbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_iota")]
++		public const uint dead_iota;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_longsolidusoverlay")]
++		public const uint dead_longsolidusoverlay;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_lowline")]
++		public const uint dead_lowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_macron")]
++		public const uint dead_macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_o")]
++		public const uint dead_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_ogonek")]
++		public const uint dead_ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_perispomeni")]
++		public const uint dead_perispomeni;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_psili")]
++		public const uint dead_psili;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_semivoiced_sound")]
++		public const uint dead_semivoiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_small_schwa")]
++		public const uint dead_small_schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_stroke")]
++		public const uint dead_stroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_tilde")]
++		public const uint dead_tilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_u")]
++		public const uint dead_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dead_voiced_sound")]
++		public const uint dead_voiced_sound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_decimalpoint")]
++		public const uint decimalpoint;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_degree")]
++		public const uint degree;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diaeresis")]
++		public const uint diaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_diamond")]
++		public const uint diamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_digitspace")]
++		public const uint digitspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dintegral")]
++		public const uint dintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_division")]
++		public const uint division;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dollar")]
++		public const uint dollar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubbaselinedot")]
++		public const uint doubbaselinedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubleacute")]
++		public const uint doubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doubledagger")]
++		public const uint doubledagger;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_doublelowquotemark")]
++		public const uint doublelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downarrow")]
++		public const uint downarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downcaret")]
++		public const uint downcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downshoe")]
++		public const uint downshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downstile")]
++		public const uint downstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_downtack")]
++		public const uint downtack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_dstroke")]
++		public const uint dstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_e")]
++		public const uint e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eabovedot")]
++		public const uint eabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eacute")]
++		public const uint eacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ebelowdot")]
++		public const uint ebelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecaron")]
++		public const uint ecaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflex")]
++		public const uint ecircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexacute")]
++		public const uint ecircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexbelowdot")]
++		public const uint ecircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexgrave")]
++		public const uint ecircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflexhook")]
++		public const uint ecircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ecircumflextilde")]
++		public const uint ecircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ediaeresis")]
++		public const uint ediaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_egrave")]
++		public const uint egrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ehook")]
++		public const uint ehook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsubscript")]
++		public const uint eightsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eightsuperior")]
++		public const uint eightsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_elementof")]
++		public const uint elementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ellipsis")]
++		public const uint ellipsis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em3space")]
++		public const uint em3space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_em4space")]
++		public const uint em4space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emacron")]
++		public const uint emacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emdash")]
++		public const uint emdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledcircle")]
++		public const uint emfilledcircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emfilledrect")]
++		public const uint emfilledrect;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopencircle")]
++		public const uint emopencircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emopenrectangle")]
++		public const uint emopenrectangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emptyset")]
++		public const uint emptyset;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_emspace")]
++		public const uint emspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_endash")]
++		public const uint endash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledcircbullet")]
++		public const uint enfilledcircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enfilledsqbullet")]
++		public const uint enfilledsqbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eng")]
++		public const uint eng;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopencircbullet")]
++		public const uint enopencircbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enopensquarebullet")]
++		public const uint enopensquarebullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_enspace")]
++		public const uint enspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eogonek")]
++		public const uint eogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_equal")]
++		public const uint equal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_eth")]
++		public const uint eth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_etilde")]
++		public const uint etilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclam")]
++		public const uint exclam;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_exclamdown")]
++		public const uint exclamdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ezh")]
++		public const uint ezh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_f")]
++		public const uint f;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fabovedot")]
++		public const uint fabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_femalesymbol")]
++		public const uint femalesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ff")]
++		public const uint ff;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_figdash")]
++		public const uint figdash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledlefttribullet")]
++		public const uint filledlefttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrectbullet")]
++		public const uint filledrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledrighttribullet")]
++		public const uint filledrighttribullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletdown")]
++		public const uint filledtribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_filledtribulletup")]
++		public const uint filledtribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fiveeighths")]
++		public const uint fiveeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesixths")]
++		public const uint fivesixths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesubscript")]
++		public const uint fivesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fivesuperior")]
++		public const uint fivesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourfifths")]
++		public const uint fourfifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursubscript")]
++		public const uint foursubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_foursuperior")]
++		public const uint foursuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_fourthroot")]
++		public const uint fourthroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_function")]
++		public const uint function;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_g")]
++		public const uint g;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gabovedot")]
++		public const uint gabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gbreve")]
++		public const uint gbreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcaron")]
++		public const uint gcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcedilla")]
++		public const uint gcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_gcircumflex")]
++		public const uint gcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_grave")]
++		public const uint grave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greater")]
++		public const uint greater;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_greaterthanequal")]
++		public const uint greaterthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotleft")]
++		public const uint guillemotleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_guillemotright")]
++		public const uint guillemotright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_h")]
++		public const uint h;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hairspace")]
++		public const uint hairspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hcircumflex")]
++		public const uint hcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_heart")]
++		public const uint heart;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_aleph")]
++		public const uint hebrew_aleph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_ayin")]
++		public const uint hebrew_ayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_bet")]
++		public const uint hebrew_bet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_beth")]
++		public const uint hebrew_beth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_chet")]
++		public const uint hebrew_chet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_dalet")]
++		public const uint hebrew_dalet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_daleth")]
++		public const uint hebrew_daleth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_doublelowline")]
++		public const uint hebrew_doublelowline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalkaph")]
++		public const uint hebrew_finalkaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalmem")]
++		public const uint hebrew_finalmem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalnun")]
++		public const uint hebrew_finalnun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalpe")]
++		public const uint hebrew_finalpe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzade")]
++		public const uint hebrew_finalzade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_finalzadi")]
++		public const uint hebrew_finalzadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimel")]
++		public const uint hebrew_gimel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_gimmel")]
++		public const uint hebrew_gimmel;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_he")]
++		public const uint hebrew_he;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_het")]
++		public const uint hebrew_het;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kaph")]
++		public const uint hebrew_kaph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_kuf")]
++		public const uint hebrew_kuf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_lamed")]
++		public const uint hebrew_lamed;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_mem")]
++		public const uint hebrew_mem;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_nun")]
++		public const uint hebrew_nun;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_pe")]
++		public const uint hebrew_pe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_qoph")]
++		public const uint hebrew_qoph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_resh")]
++		public const uint hebrew_resh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samech")]
++		public const uint hebrew_samech;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_samekh")]
++		public const uint hebrew_samekh;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_shin")]
++		public const uint hebrew_shin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taf")]
++		public const uint hebrew_taf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_taw")]
++		public const uint hebrew_taw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_tet")]
++		public const uint hebrew_tet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_teth")]
++		public const uint hebrew_teth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_waw")]
++		public const uint hebrew_waw;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_yod")]
++		public const uint hebrew_yod;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zade")]
++		public const uint hebrew_zade;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zadi")]
++		public const uint hebrew_zadi;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zain")]
++		public const uint hebrew_zain;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hebrew_zayin")]
++		public const uint hebrew_zayin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hexagram")]
++		public const uint hexagram;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizconnector")]
++		public const uint horizconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan1")]
++		public const uint horizlinescan1;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan3")]
++		public const uint horizlinescan3;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan5")]
++		public const uint horizlinescan5;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan7")]
++		public const uint horizlinescan7;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_horizlinescan9")]
++		public const uint horizlinescan9;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hstroke")]
++		public const uint hstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ht")]
++		public const uint ht;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_hyphen")]
++		public const uint hyphen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_i")]
++		public const uint i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iTouch")]
++		public const uint iTouch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iacute")]
++		public const uint iacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibelowdot")]
++		public const uint ibelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ibreve")]
++		public const uint ibreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_icircumflex")]
++		public const uint icircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_identical")]
++		public const uint identical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idiaeresis")]
++		public const uint idiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_idotless")]
++		public const uint idotless;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ifonlyif")]
++		public const uint ifonlyif;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_igrave")]
++		public const uint igrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ihook")]
++		public const uint ihook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_imacron")]
++		public const uint imacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_implies")]
++		public const uint implies;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includedin")]
++		public const uint includedin;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_includes")]
++		public const uint includes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_infinity")]
++		public const uint infinity;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_integral")]
++		public const uint integral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_intersection")]
++		public const uint intersection;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_iogonek")]
++		public const uint iogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_itilde")]
++		public const uint itilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_j")]
++		public const uint j;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jcircumflex")]
++		public const uint jcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_jot")]
++		public const uint jot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_k")]
++		public const uint k;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_A")]
++		public const uint kana_A;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_CHI")]
++		public const uint kana_CHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_E")]
++		public const uint kana_E;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_FU")]
++		public const uint kana_FU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HA")]
++		public const uint kana_HA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HE")]
++		public const uint kana_HE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HI")]
++		public const uint kana_HI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HO")]
++		public const uint kana_HO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_HU")]
++		public const uint kana_HU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_I")]
++		public const uint kana_I;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KA")]
++		public const uint kana_KA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KE")]
++		public const uint kana_KE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KI")]
++		public const uint kana_KI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KO")]
++		public const uint kana_KO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_KU")]
++		public const uint kana_KU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MA")]
++		public const uint kana_MA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ME")]
++		public const uint kana_ME;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MI")]
++		public const uint kana_MI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MO")]
++		public const uint kana_MO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_MU")]
++		public const uint kana_MU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_N")]
++		public const uint kana_N;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NA")]
++		public const uint kana_NA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NE")]
++		public const uint kana_NE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NI")]
++		public const uint kana_NI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NO")]
++		public const uint kana_NO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_NU")]
++		public const uint kana_NU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_O")]
++		public const uint kana_O;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RA")]
++		public const uint kana_RA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RE")]
++		public const uint kana_RE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RI")]
++		public const uint kana_RI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RO")]
++		public const uint kana_RO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_RU")]
++		public const uint kana_RU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SA")]
++		public const uint kana_SA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SE")]
++		public const uint kana_SE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SHI")]
++		public const uint kana_SHI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SO")]
++		public const uint kana_SO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_SU")]
++		public const uint kana_SU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TA")]
++		public const uint kana_TA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TE")]
++		public const uint kana_TE;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TI")]
++		public const uint kana_TI;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TO")]
++		public const uint kana_TO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TSU")]
++		public const uint kana_TSU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_TU")]
++		public const uint kana_TU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_U")]
++		public const uint kana_U;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WA")]
++		public const uint kana_WA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_WO")]
++		public const uint kana_WO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YA")]
++		public const uint kana_YA;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YO")]
++		public const uint kana_YO;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_YU")]
++		public const uint kana_YU;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_a")]
++		public const uint kana_a;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_closingbracket")]
++		public const uint kana_closingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_comma")]
++		public const uint kana_comma;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_conjunctive")]
++		public const uint kana_conjunctive;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_e")]
++		public const uint kana_e;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_fullstop")]
++		public const uint kana_fullstop;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_i")]
++		public const uint kana_i;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_middledot")]
++		public const uint kana_middledot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_o")]
++		public const uint kana_o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_openingbracket")]
++		public const uint kana_openingbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_switch")]
++		public const uint kana_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tsu")]
++		public const uint kana_tsu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_tu")]
++		public const uint kana_tu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_u")]
++		public const uint kana_u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_ya")]
++		public const uint kana_ya;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yo")]
++		public const uint kana_yo;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kana_yu")]
++		public const uint kana_yu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kappa")]
++		public const uint kappa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kcedilla")]
++		public const uint kcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_kra")]
++		public const uint kra;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_l")]
++		public const uint l;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lacute")]
++		public const uint lacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_latincross")]
++		public const uint latincross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lbelowdot")]
++		public const uint lbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcaron")]
++		public const uint lcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lcedilla")]
++		public const uint lcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftanglebracket")]
++		public const uint leftanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftarrow")]
++		public const uint leftarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftcaret")]
++		public const uint leftcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftdoublequotemark")]
++		public const uint leftdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftmiddlecurlybrace")]
++		public const uint leftmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftopentriangle")]
++		public const uint leftopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftpointer")]
++		public const uint leftpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftradical")]
++		public const uint leftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftshoe")]
++		public const uint leftshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftsinglequotemark")]
++		public const uint leftsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_leftt")]
++		public const uint leftt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lefttack")]
++		public const uint lefttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_less")]
++		public const uint less;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lessthanequal")]
++		public const uint lessthanequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lf")]
++		public const uint lf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicaland")]
++		public const uint logicaland;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_logicalor")]
++		public const uint logicalor;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowleftcorner")]
++		public const uint lowleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lowrightcorner")]
++		public const uint lowrightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_lstroke")]
++		public const uint lstroke;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_m")]
++		public const uint m;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mabovedot")]
++		public const uint mabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_macron")]
++		public const uint macron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_malesymbol")]
++		public const uint malesymbol;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_maltesecross")]
++		public const uint maltesecross;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_marker")]
++		public const uint marker;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_masculine")]
++		public const uint masculine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minus")]
++		public const uint minus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_minutes")]
++		public const uint minutes;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_mu")]
++		public const uint mu;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_multiply")]
++		public const uint multiply;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalflat")]
++		public const uint musicalflat;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_musicalsharp")]
++		public const uint musicalsharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_n")]
++		public const uint n;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nabla")]
++		public const uint nabla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nacute")]
++		public const uint nacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncaron")]
++		public const uint ncaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ncedilla")]
++		public const uint ncedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesubscript")]
++		public const uint ninesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ninesuperior")]
++		public const uint ninesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nl")]
++		public const uint nl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_nobreakspace")]
++		public const uint nobreakspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notapproxeq")]
++		public const uint notapproxeq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notelementof")]
++		public const uint notelementof;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notequal")]
++		public const uint notequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notidentical")]
++		public const uint notidentical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_notsign")]
++		public const uint notsign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ntilde")]
++		public const uint ntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numbersign")]
++		public const uint numbersign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_numerosign")]
++		public const uint numerosign;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_o")]
++		public const uint o;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oacute")]
++		public const uint oacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obarred")]
++		public const uint obarred;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_obelowdot")]
++		public const uint obelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocaron")]
++		public const uint ocaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflex")]
++		public const uint ocircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexacute")]
++		public const uint ocircumflexacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexbelowdot")]
++		public const uint ocircumflexbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexgrave")]
++		public const uint ocircumflexgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflexhook")]
++		public const uint ocircumflexhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ocircumflextilde")]
++		public const uint ocircumflextilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odiaeresis")]
++		public const uint odiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_odoubleacute")]
++		public const uint odoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oe")]
++		public const uint oe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ogonek")]
++		public const uint ogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ograve")]
++		public const uint ograve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohook")]
++		public const uint ohook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorn")]
++		public const uint ohorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornacute")]
++		public const uint ohornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornbelowdot")]
++		public const uint ohornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorngrave")]
++		public const uint ohorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohornhook")]
++		public const uint ohornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ohorntilde")]
++		public const uint ohorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_omacron")]
++		public const uint omacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oneeighth")]
++		public const uint oneeighth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onefifth")]
++		public const uint onefifth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onehalf")]
++		public const uint onehalf;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onequarter")]
++		public const uint onequarter;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesixth")]
++		public const uint onesixth;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesubscript")]
++		public const uint onesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onesuperior")]
++		public const uint onesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_onethird")]
++		public const uint onethird;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ooblique")]
++		public const uint ooblique;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openrectbullet")]
++		public const uint openrectbullet;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_openstar")]
++		public const uint openstar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletdown")]
++		public const uint opentribulletdown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_opentribulletup")]
++		public const uint opentribulletup;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ordfeminine")]
++		public const uint ordfeminine;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_oslash")]
++		public const uint oslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_otilde")]
++		public const uint otilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overbar")]
++		public const uint overbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_overline")]
++		public const uint overline;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_p")]
++		public const uint p;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_pabovedot")]
++		public const uint pabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_paragraph")]
++		public const uint paragraph;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenleft")]
++		public const uint parenleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_parenright")]
++		public const uint parenright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partdifferential")]
++		public const uint partdifferential;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_partialderivative")]
++		public const uint partialderivative;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_percent")]
++		public const uint percent;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_period")]
++		public const uint period;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_periodcentered")]
++		public const uint periodcentered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_permille")]
++		public const uint permille;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_phonographcopyright")]
++		public const uint phonographcopyright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plus")]
++		public const uint plus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_plusminus")]
++		public const uint plusminus;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prescription")]
++		public const uint prescription;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_prolongedsound")]
++		public const uint prolongedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_punctspace")]
++		public const uint punctspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_q")]
++		public const uint q;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quad")]
++		public const uint quad;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_question")]
++		public const uint question;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_questiondown")]
++		public const uint questiondown;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quotedbl")]
++		public const uint quotedbl;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteleft")]
++		public const uint quoteleft;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_quoteright")]
++		public const uint quoteright;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_r")]
++		public const uint r;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_racute")]
++		public const uint racute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_radical")]
++		public const uint radical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcaron")]
++		public const uint rcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rcedilla")]
++		public const uint rcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_registered")]
++		public const uint registered;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightanglebracket")]
++		public const uint rightanglebracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightarrow")]
++		public const uint rightarrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightcaret")]
++		public const uint rightcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightdoublequotemark")]
++		public const uint rightdoublequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlecurlybrace")]
++		public const uint rightmiddlecurlybrace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightmiddlesummation")]
++		public const uint rightmiddlesummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightopentriangle")]
++		public const uint rightopentriangle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightpointer")]
++		public const uint rightpointer;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightshoe")]
++		public const uint rightshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightsinglequotemark")]
++		public const uint rightsinglequotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_rightt")]
++		public const uint rightt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_righttack")]
++		public const uint righttack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_s")]
++		public const uint s;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sabovedot")]
++		public const uint sabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sacute")]
++		public const uint sacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scaron")]
++		public const uint scaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scedilla")]
++		public const uint scedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_schwa")]
++		public const uint schwa;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_scircumflex")]
++		public const uint scircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_script_switch")]
++		public const uint script_switch;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seconds")]
++		public const uint seconds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_section")]
++		public const uint section;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semicolon")]
++		public const uint semicolon;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_semivoicedsound")]
++		public const uint semivoicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_seveneighths")]
++		public const uint seveneighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensubscript")]
++		public const uint sevensubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sevensuperior")]
++		public const uint sevensuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signaturemark")]
++		public const uint signaturemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_signifblank")]
++		public const uint signifblank;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_similarequal")]
++		public const uint similarequal;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_singlelowquotemark")]
++		public const uint singlelowquotemark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsubscript")]
++		public const uint sixsubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sixsuperior")]
++		public const uint sixsuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_slash")]
++		public const uint slash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_soliddiamond")]
++		public const uint soliddiamond;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_space")]
++		public const uint space;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_squareroot")]
++		public const uint squareroot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ssharp")]
++		public const uint ssharp;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_sterling")]
++		public const uint sterling;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_stricteq")]
++		public const uint stricteq;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_t")]
++		public const uint t;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tabovedot")]
++		public const uint tabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcaron")]
++		public const uint tcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tcedilla")]
++		public const uint tcedilla;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephone")]
++		public const uint telephone;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_telephonerecorder")]
++		public const uint telephonerecorder;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_therefore")]
++		public const uint therefore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thinspace")]
++		public const uint thinspace;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_thorn")]
++		public const uint thorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threeeighths")]
++		public const uint threeeighths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threefifths")]
++		public const uint threefifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threequarters")]
++		public const uint threequarters;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesubscript")]
++		public const uint threesubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_threesuperior")]
++		public const uint threesuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tintegral")]
++		public const uint tintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topintegral")]
++		public const uint topintegral;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftparens")]
++		public const uint topleftparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftradical")]
++		public const uint topleftradical;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsqbracket")]
++		public const uint topleftsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topleftsummation")]
++		public const uint topleftsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightparens")]
++		public const uint toprightparens;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsqbracket")]
++		public const uint toprightsqbracket;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_toprightsummation")]
++		public const uint toprightsummation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topt")]
++		public const uint topt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_topvertsummationconnector")]
++		public const uint topvertsummationconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademark")]
++		public const uint trademark;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_trademarkincircle")]
++		public const uint trademarkincircle;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_tslash")]
++		public const uint tslash;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twofifths")]
++		public const uint twofifths;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosubscript")]
++		public const uint twosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twosuperior")]
++		public const uint twosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_twothirds")]
++		public const uint twothirds;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_u")]
++		public const uint u;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uacute")]
++		public const uint uacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubelowdot")]
++		public const uint ubelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ubreve")]
++		public const uint ubreve;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ucircumflex")]
++		public const uint ucircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udiaeresis")]
++		public const uint udiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_udoubleacute")]
++		public const uint udoubleacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ugrave")]
++		public const uint ugrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhook")]
++		public const uint uhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorn")]
++		public const uint uhorn;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornacute")]
++		public const uint uhornacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornbelowdot")]
++		public const uint uhornbelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorngrave")]
++		public const uint uhorngrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhornhook")]
++		public const uint uhornhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uhorntilde")]
++		public const uint uhorntilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_umacron")]
++		public const uint umacron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underbar")]
++		public const uint underbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_underscore")]
++		public const uint underscore;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_union")]
++		public const uint union;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uogonek")]
++		public const uint uogonek;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uparrow")]
++		public const uint uparrow;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upcaret")]
++		public const uint upcaret;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upleftcorner")]
++		public const uint upleftcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uprightcorner")]
++		public const uint uprightcorner;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upshoe")]
++		public const uint upshoe;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_upstile")]
++		public const uint upstile;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uptack")]
++		public const uint uptack;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_uring")]
++		public const uint uring;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_utilde")]
++		public const uint utilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_v")]
++		public const uint v;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_variation")]
++		public const uint variation;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertbar")]
++		public const uint vertbar;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vertconnector")]
++		public const uint vertconnector;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_voicedsound")]
++		public const uint voicedsound;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_vt")]
++		public const uint vt;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_w")]
++		public const uint w;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wacute")]
++		public const uint wacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wcircumflex")]
++		public const uint wcircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wdiaeresis")]
++		public const uint wdiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_wgrave")]
++		public const uint wgrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_x")]
++		public const uint x;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_xabovedot")]
++		public const uint xabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_y")]
++		public const uint y;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yacute")]
++		public const uint yacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ybelowdot")]
++		public const uint ybelowdot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ycircumflex")]
++		public const uint ycircumflex;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ydiaeresis")]
++		public const uint ydiaeresis;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yen")]
++		public const uint yen;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ygrave")]
++		public const uint ygrave;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_yhook")]
++		public const uint yhook;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_ytilde")]
++		public const uint ytilde;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_z")]
++		public const uint z;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zabovedot")]
++		public const uint zabovedot;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zacute")]
++		public const uint zacute;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zcaron")]
++		public const uint zcaron;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosubscript")]
++		public const uint zerosubscript;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zerosuperior")]
++		public const uint zerosuperior;
++		[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_zstroke")]
++		public const uint zstroke;
++	}
++	namespace Threads {
++		namespace Idle {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle")]
++			[Version (since = "0.4")]
++			public static uint add (GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_idle_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, owned GLib.SourceFunc func);
++		}
++		namespace Timeout {
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout")]
++			[Version (since = "0.4")]
++			public static uint add (uint interval, GLib.SourceFunc func);
++			[CCode (cheader_filename = "clutter/clutter.h", cname = "clutter_threads_add_timeout_full")]
++			[Version (since = "0.4")]
++			public static uint add_full (int priority, uint interval, owned GLib.SourceFunc func);
++		}
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static uint add_repaint_func (owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static uint add_repaint_func_full (Clutter.RepaintFlags flags, owned GLib.SourceFunc func);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.0")]
++		public static void remove_repaint_func (uint handle_id);
++	}
++	namespace Value {
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static Clutter.PaintNode dup_paint_node (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Color? get_color (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static unowned Clutter.PaintNode get_paint_node (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_float (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned int[] get_shader_int (GLib.Value value);
++		[CCode (array_length_pos = 1.1, array_length_type = "gsize", cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned float[] get_shader_matrix (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static unowned Clutter.Units? get_units (GLib.Value value);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_color (GLib.Value value, Clutter.Color color);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void set_paint_node (GLib.Value value, Clutter.PaintNode? node);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_float (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] floats);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_int (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] int[] ints);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_shader_matrix (GLib.Value value, [CCode (array_length_cname = "size", array_length_pos = 1.5)] float[] matrix);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "0.8")]
++		public static void set_units (GLib.Value value, Clutter.Units units);
++		[CCode (cheader_filename = "clutter/clutter.h")]
++		[Version (since = "1.10")]
++		public static void take_paint_node (GLib.Value value, Clutter.PaintNode? node);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_action_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Action : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Action ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
++	public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		public uint32 flags;
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.10")]
++		public Actor ();
++		[Version (since = "1.4")]
++		public void add_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void add_action_with_name (string name, Clutter.Action action);
++		[Version (since = "1.10")]
++		public void add_child (Clutter.Actor child);
++		[Version (since = "1.4")]
++		public void add_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_constraint_with_name (string name, Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void add_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void add_effect_with_name (string name, Clutter.Effect effect);
++		[Version (since = "1.10")]
++		public void add_transition (string name, Clutter.Transition transition);
++		[Version (since = "0.8")]
++		public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "1.4")]
++		public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags);
++		[Version (since = "1.0")]
++		public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags);
++		[Version (since = "0.8")]
++		public void allocate_preferred_size (Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate (ulong mode, uint duration, ...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...);
++		[Version (since = "0.6")]
++		public void apply_relative_transform_to_point (Clutter.Actor? ancestor, Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[NoWrapper]
++		public virtual void apply_transform (ref Clutter.Matrix matrix);
++		[Version (since = "0.4")]
++		public void apply_transform_to_point (Graphene.Point3D point, out unowned Graphene.Point3D vertex);
++		[Version (since = "1.24")]
++		public void bind_model (GLib.ListModel? model, owned Clutter.ActorCreateChildFunc create_child_func);
++		[Version (since = "1.4")]
++		public void clear_actions ();
++		[Version (since = "1.4")]
++		public void clear_constraints ();
++		[Version (since = "1.4")]
++		public void clear_effects ();
++		[Version (since = "1.4")]
++		public bool contains (Clutter.Actor descendant);
++		[Version (since = "1.8")]
++		public void continue_paint (Clutter.PaintContext paint_context);
++		public void continue_pick (Clutter.PickContext pick_context);
++		[Version (since = "1.0")]
++		public Pango.Context create_pango_context ();
++		[Version (since = "1.0")]
++		public Pango.Layout create_pango_layout (string? text);
++		[Version (since = "1.10")]
++		public void destroy_all_children ();
++		[CCode (cname = "clutter_actor_event")]
++		[Version (since = "0.6")]
++		public bool emit_event (Clutter.Event event, bool capture);
++		[Version (since = "0.4")]
++		public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
++		public virtual unowned Atk.Object get_accessible ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Action get_action (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Action> get_actions ();
++		[Version (since = "0.8")]
++		public Clutter.ActorBox get_allocation_box ();
++		[Version (since = "0.6")]
++		public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_anchor_point_gravity ();
++		[Version (since = "1.10")]
++		public Clutter.Color get_background_color ();
++		[CCode (cname = "clutter_get_actor_by_gid")]
++		[Version (deprecated = true, deprecated_since = "1.8", since = "0.6")]
++		public static unowned Clutter.Actor get_by_gid (uint32 id_);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_child_at_index (int index_);
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_child_transform ();
++		[Version (since = "1.10")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[Version (since = "0.6")]
++		public void get_clip (out float xoff, out float yoff, out float width, out float height);
++		[Version (since = "1.4")]
++		public bool get_clip_to_allocation ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Constraint get_constraint (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Constraint> get_constraints ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Content get_content ();
++		[Version (since = "1.10")]
++		public Clutter.ActorBox get_content_box ();
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity get_content_gravity ();
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat get_content_repeat ();
++		[Version (since = "1.10")]
++		public void get_content_scaling_filters (out Clutter.ScalingFilter min_filter, out Clutter.ScalingFilter mag_filter);
++		[Version (since = "1.10")]
++		public unowned Clutter.PaintVolume get_default_paint_volume ();
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public float get_depth ();
++		[Version (since = "1.10")]
++		public uint get_easing_delay ();
++		[Version (since = "1.10")]
++		public uint get_easing_duration ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_easing_mode ();
++		[Version (since = "1.4")]
++		public unowned Clutter.Effect get_effect (string name);
++		[Version (since = "1.4")]
++		public GLib.List<weak Clutter.Effect> get_effects ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_first_child ();
++		[Version (since = "0.8")]
++		public bool get_fixed_position_set ();
++		[Version (since = "1.0")]
++		public Clutter.ActorFlags get_flags ();
++		[CCode (cname = "clutter_actor_has_pointer")]
++		[Version (since = "1.2")]
++		public bool get_has_pointer ();
++		public float get_height ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_last_child ();
++		[Version (since = "1.10")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (since = "1.10")]
++		public void get_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public float get_margin_bottom ();
++		[Version (since = "1.10")]
++		public float get_margin_left ();
++		[Version (since = "1.10")]
++		public float get_margin_right ();
++		[Version (since = "1.10")]
++		public float get_margin_top ();
++		[Version (since = "1.10")]
++		public int get_n_children ();
++		public unowned string get_name ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_next_sibling ();
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect get_offscreen_redirect ();
++		public uint8 get_opacity ();
++		[Version (since = "1.22")]
++		public int get_opacity_override ();
++		[Version (since = "1.6")]
++		public bool get_paint_box (out Clutter.ActorBox box);
++		[Version (since = "0.8")]
++		public uint8 get_paint_opacity ();
++		[Version (since = "0.8")]
++		public bool get_paint_visibility ();
++		[NoWrapper]
++		public virtual bool get_paint_volume (Clutter.PaintVolume volume);
++		[Version (since = "1.0")]
++		public unowned Pango.Context get_pango_context ();
++		public unowned Clutter.Actor? get_parent ();
++		[Version (since = "1.12")]
++		public void get_pivot_point (out float pivot_x, out float pivot_y);
++		[Version (since = "1.12")]
++		public float get_pivot_point_z ();
++		[Version (since = "0.6")]
++		public void get_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_height (float for_width, out float min_height_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public void get_preferred_size (out float min_width_p, out float min_height_p, out float natural_width_p, out float natural_height_p);
++		[Version (since = "0.8")]
++		public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_previous_sibling ();
++		[Version (since = "0.6")]
++		public bool get_reactive ();
++		[Version (since = "1.2")]
++		public Clutter.RequestMode get_request_mode ();
++		public bool get_resource_scale (out float resource_scale);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public double get_rotation (Clutter.RotateAxis axis, out float x, out float y, out float z);
++		[Version (since = "1.12")]
++		public double get_rotation_angle (Clutter.RotateAxis axis);
++		[Version (since = "0.2")]
++		public void get_scale (out double scale_x, out double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void get_scale_center (out float center_x, out float center_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_scale_gravity ();
++		[Version (since = "1.12")]
++		public double get_scale_z ();
++		[Version (since = "0.2")]
++		public void get_size (out float width, out float height);
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "1.2")]
++		public Clutter.TextDirection get_text_direction ();
++		[Version (since = "1.12")]
++		public Clutter.Matrix get_transform ();
++		[Version (since = "1.6")]
++		public unowned Clutter.PaintVolume get_transformed_paint_volume (Clutter.Actor relative_to_ancestor);
++		[Version (since = "0.8")]
++		public void get_transformed_position (out float x, out float y);
++		[Version (since = "0.8")]
++		public void get_transformed_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Clutter.Transition get_transition (string name);
++		[Version (since = "1.12")]
++		public void get_translation (out float translate_x, out float translate_y, out float translate_z);
++		public float get_width ();
++		public float get_x ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_x_align ();
++		[Version (since = "1.12")]
++		public bool get_x_expand ();
++		public float get_y ();
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign get_y_align ();
++		[Version (since = "1.12")]
++		public bool get_y_expand ();
++		[Version (since = "1.12")]
++		public float get_z_position ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity get_z_rotation_gravity ();
++		[Version (since = "1.0")]
++		public void grab_key_focus ();
++		[Version (since = "1.10")]
++		public bool has_actions ();
++		[Version (since = "1.4")]
++		public bool has_allocation ();
++		[Version (since = "1.10")]
++		public bool has_constraints ();
++		public bool has_damage ();
++		[Version (since = "1.10")]
++		public bool has_effects ();
++		[Version (since = "1.4")]
++		public bool has_key_focus ();
++		[Version (since = "1.16")]
++		public bool has_mapped_clones ();
++		[Version (since = "1.8")]
++		public virtual bool has_overlaps ();
++		[NoWrapper]
++		public virtual void hide_all ();
++		[Version (since = "1.10")]
++		public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void insert_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void insert_child_below (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.0")]
++		public bool is_in_clone_paint ();
++		[Version (since = "1.24")]
++		public bool is_mapped ();
++		[Version (since = "1.24")]
++		public bool is_realized ();
++		[Version (since = "0.6")]
++		public bool is_rotated ();
++		[Version (since = "0.6")]
++		public bool is_scaled ();
++		[Version (since = "1.24")]
++		public bool is_visible ();
++		[Version (since = "1.0")]
++		public virtual void map ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void move_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "0.2")]
++		public void move_by (float dx, float dy);
++		[Version (since = "1.12")]
++		public bool needs_expand (Clutter.Orientation orientation);
++		[NoWrapper]
++		public virtual void paint_node (Clutter.PaintNode root);
++		public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box);
++		public void pop_internal ();
++		public void push_internal ();
++		public void queue_redraw ();
++		[Version (since = "1.10")]
++		public void queue_redraw_with_clip (Cairo.RectangleInt? clip);
++		[Version (since = "1.4")]
++		public void remove_action (Clutter.Action action);
++		[Version (since = "1.4")]
++		public void remove_action_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_all_children ();
++		[Version (since = "1.10")]
++		public void remove_all_transitions ();
++		[Version (since = "1.10")]
++		public void remove_child (Clutter.Actor child);
++		public void remove_clip ();
++		[Version (since = "1.4")]
++		public void remove_constraint (Clutter.Constraint constraint);
++		[Version (since = "1.4")]
++		public void remove_constraint_by_name (string name);
++		[Version (since = "1.4")]
++		public void remove_effect (Clutter.Effect effect);
++		[Version (since = "1.4")]
++		public void remove_effect_by_name (string name);
++		[Version (since = "1.10")]
++		public void remove_transition (string name);
++		[Version (since = "1.10")]
++		public void replace_child (Clutter.Actor old_child, Clutter.Actor new_child);
++		[Version (since = "1.10")]
++		public void restore_easing_state ();
++		[Version (since = "1.10")]
++		public void save_easing_state ();
++		[Version (since = "1.10")]
++		public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point (float anchor_x, float anchor_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public void set_anchor_point_from_gravity (Clutter.Gravity gravity);
++		[Version (since = "1.10")]
++		public void set_background_color (Clutter.Color? color);
++		[Version (since = "1.10")]
++		public void set_child_above_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.10")]
++		public void set_child_at_index (Clutter.Actor child, int index_);
++		[Version (since = "1.10")]
++		public void set_child_below_sibling (Clutter.Actor child, Clutter.Actor? sibling);
++		[Version (since = "1.12")]
++		public void set_child_transform (Clutter.Matrix? transform);
++		[Version (since = "0.6")]
++		public void set_clip (float xoff, float yoff, float width, float height);
++		[Version (since = "1.4")]
++		public void set_clip_to_allocation (bool clip_set);
++		[Version (since = "1.10")]
++		public void set_content (Clutter.Content? content);
++		[Version (since = "1.10")]
++		public void set_content_gravity (Clutter.ContentGravity gravity);
++		[Version (since = "1.12")]
++		public void set_content_repeat (Clutter.ContentRepeat repeat);
++		[Version (since = "1.10")]
++		public void set_content_scaling_filters (Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.12")]
++		public void set_depth (float depth);
++		[Version (since = "1.10")]
++		public void set_easing_delay (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_duration (uint msecs);
++		[Version (since = "1.10")]
++		public void set_easing_mode (Clutter.AnimationMode mode);
++		[Version (since = "0.8")]
++		public void set_fixed_position_set (bool is_set);
++		[Version (since = "1.0")]
++		public void set_flags (Clutter.ActorFlags flags);
++		[Version (since = "0.2")]
++		public void set_height (float height);
++		[Version (since = "1.10")]
++		public void set_layout_manager (Clutter.LayoutManager? manager);
++		[Version (since = "1.10")]
++		public void set_margin (Clutter.Margin margin);
++		[Version (since = "1.10")]
++		public void set_margin_bottom (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_left (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_right (float margin);
++		[Version (since = "1.10")]
++		public void set_margin_top (float margin);
++		public void set_name (string name);
++		[Version (since = "1.8")]
++		public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
++		public void set_opacity (uint8 opacity);
++		public void set_opacity_override (int opacity);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_parent (Clutter.Actor parent);
++		[Version (since = "1.12")]
++		public void set_pivot_point (float pivot_x, float pivot_y);
++		[Version (since = "1.12")]
++		public void set_pivot_point_z (float pivot_z);
++		public void set_position (float x, float y);
++		[Version (since = "0.6")]
++		public void set_reactive (bool reactive);
++		[Version (since = "1.2")]
++		public void set_request_mode (Clutter.RequestMode mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public void set_rotation (Clutter.RotateAxis axis, double angle, float x, float y, float z);
++		[Version (since = "1.12")]
++		public void set_rotation_angle (Clutter.RotateAxis axis, double angle);
++		[Version (since = "0.2")]
++		public void set_scale (double scale_x, double scale_y);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_scale_full (double scale_x, double scale_y, float center_x, float center_y);
++		[Version (since = "1.12")]
++		public void set_scale_z (double scale_z);
++		public void set_size (float width, float height);
++		[Version (since = "1.2")]
++		public void set_text_direction (Clutter.TextDirection text_dir);
++		[Version (since = "1.12")]
++		public void set_transform (Clutter.Matrix? transform);
++		[Version (since = "1.12")]
++		public void set_translation (float translate_x, float translate_y, float translate_z);
++		[Version (since = "0.2")]
++		public void set_width (float width);
++		[Version (since = "0.6")]
++		public void set_x (float x);
++		[Version (since = "1.10")]
++		public void set_x_align (Clutter.ActorAlign x_align);
++		[Version (since = "1.12")]
++		public void set_x_expand (bool expand);
++		[Version (since = "0.6")]
++		public void set_y (float y);
++		[Version (since = "1.10")]
++		public void set_y_align (Clutter.ActorAlign y_align);
++		[Version (since = "1.12")]
++		public void set_y_expand (bool expand);
++		[Version (since = "1.12")]
++		public void set_z_position (float z_position);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public void set_z_rotation_from_gravity (double angle, Clutter.Gravity gravity);
++		public bool should_pick_paint ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public virtual void show_all ();
++		[Version (since = "0.6")]
++		public bool transform_stage_point (float x, float y, out float x_out, out float y_out);
++		[Version (since = "1.0")]
++		public virtual void unmap ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void unparent ();
++		[Version (since = "1.0")]
++		public void unset_flags (Clutter.ActorFlags flags);
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Action actions { set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public Clutter.ActorBox allocation { owned get; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity anchor_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public float anchor_y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Color background_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.10")]
++		public bool background_color_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool child_transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect clip_rect { owned get; set; }
++		[Version (since = "1.0")]
++		public bool clip_to_allocation { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Constraint constraints { set; }
++		[Version (since = "1.10")]
++		public Clutter.Content content { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorBox content_box { get; }
++		[Version (since = "1.10")]
++		public Clutter.ContentGravity content_gravity { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.ContentRepeat content_repeat { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public float depth { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.4")]
++		public Clutter.Effect effect { set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor first_child { get; }
++		[Version (since = "0.8")]
++		public bool fixed_position_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float fixed_y { get; set; }
++		[NoAccessorMethod]
++		public bool has_clip { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public bool has_pointer { get; }
++		public float height { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.Actor last_child { get; }
++		[Version (since = "1.10")]
++		public Clutter.LayoutManager layout_manager { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter magnification_filter { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool mapped { get; }
++		[Version (since = "1.10")]
++		public float margin_bottom { get; set; }
++		[Version (since = "1.10")]
++		public float margin_left { get; set; }
++		[Version (since = "1.10")]
++		public float margin_right { get; set; }
++		[Version (since = "1.10")]
++		public float margin_top { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float min_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool min_width_set { get; set; }
++		[NoAccessorMethod]
++		public Clutter.ScalingFilter minification_filter { get; set; }
++		[Version (since = "0.2")]
++		public string name { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_height { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_height_set { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public float natural_width { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool natural_width_set { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.OffscreenRedirect offscreen_redirect { get; set; }
++		public uint opacity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point pivot_point { owned get; set; }
++		[Version (since = "1.12")]
++		public float pivot_point_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Point position { owned get; set; }
++		[Version (since = "0.6")]
++		public bool reactive { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.0")]
++		public bool realized { get; }
++		[Version (since = "0.8")]
++		public Clutter.RequestMode request_mode { get; set; }
++		[NoAccessorMethod]
++		public float resource_scale { get; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double rotation_angle_z { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_x { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_y { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.6")]
++		public Graphene.Point3D rotation_center_z { owned get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity rotation_center_z_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_x { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public float scale_center_y { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public Clutter.Gravity scale_gravity { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.6")]
++		public double scale_y { get; set; }
++		[Version (since = "1.12")]
++		public double scale_z { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "0.8")]
++		public bool show_on_set_parent { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Size size { owned get; set; }
++		[Version (since = "1.0")]
++		public Clutter.TextDirection text_direction { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool transform_set { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_x { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_y { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public float translation_z { get; set; }
++		[NoAccessorMethod]
++		public bool visible { get; set; }
++		public float width { get; set; }
++		public float x { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign x_align { get; set; }
++		[Version (since = "1.12")]
++		public bool x_expand { get; set; }
++		public float y { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.ActorAlign y_align { get; set; }
++		[Version (since = "1.12")]
++		public bool y_expand { get; set; }
++		[Version (since = "1.12")]
++		public float z_position { get; set; }
++		[Version (since = "1.0")]
++		public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags);
++		[Version (since = "0.6")]
++		public virtual signal bool button_press_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool button_release_event (Clutter.ButtonEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool captured_event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void destroy ();
++		[Version (since = "0.6")]
++		public virtual signal bool enter_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool event (Clutter.Event event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void hide ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_in ();
++		[Version (since = "0.6")]
++		public virtual signal void key_focus_out ();
++		[Version (since = "0.6")]
++		public virtual signal bool key_press_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool key_release_event (Clutter.KeyEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool leave_event (Clutter.CrossingEvent event);
++		[Version (since = "0.6")]
++		public virtual signal bool motion_event (Clutter.MotionEvent event);
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "0.8")]
++		public virtual signal void paint (Clutter.PaintContext paint_context);
++		[Version (since = "0.2")]
++		public virtual signal void parent_set (Clutter.Actor? old_parent);
++		[HasEmitter]
++		[Version (since = "1.0")]
++		public virtual signal void pick (Clutter.PickContext pick_context);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public virtual signal void queue_relayout ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void realize ();
++		[Version (since = "0.6")]
++		public virtual signal bool scroll_event (Clutter.ScrollEvent event);
++		[HasEmitter]
++		[Version (since = "0.2")]
++		public virtual signal void show ();
++		[Version (since = "1.12")]
++		public virtual signal bool touch_event (Clutter.Event event);
++		[Version (since = "1.12")]
++		public signal void transition_stopped (string name, bool is_finished);
++		[Version (since = "1.10")]
++		public signal void transitions_completed ();
++		[HasEmitter]
++		[Version (deprecated = true, deprecated_since = "1.16", since = "0.8")]
++		public virtual signal void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_meta_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class ActorMeta : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected ActorMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public bool get_enabled ();
++		public unowned string get_name ();
++		[NoWrapper]
++		public virtual void set_actor (Clutter.Actor? actor);
++		public void set_enabled (bool is_enabled);
++		public void set_name (string name);
++		public Clutter.Actor actor { get; }
++		public bool enabled { get; set; }
++		public string name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_node_get_type ()")]
++	public class ActorNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ActorNode (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_align_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class AlignConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public AlignConstraint (Clutter.Actor? source, Clutter.AlignAxis axis, float factor);
++		public Clutter.AlignAxis get_align_axis ();
++		public float get_factor ();
++		public unowned Clutter.Actor get_source ();
++		public void set_align_axis (Clutter.AlignAxis axis);
++		public void set_factor (float factor);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.AlignAxis align_axis { get; set construct; }
++		public float factor { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_alpha_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public class Alpha : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Alpha ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.0")]
++		public Alpha.full (Clutter.Timeline timeline, ulong mode);
++		public double get_alpha ();
++		[Version (since = "1.0")]
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		[Version (since = "0.8")]
++		public void set_closure (GLib.Closure closure);
++		public void set_func (owned Clutter.AlphaFunc func);
++		[Version (since = "1.0")]
++		public void set_mode (ulong mode);
++		public void set_timeline (Clutter.Timeline timeline);
++		public double alpha { get; }
++		[Version (since = "1.0")]
++		public ulong mode { get; set construct; }
++		public Clutter.Timeline timeline { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++	public class Animation : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Animation ();
++		public uint get_duration ();
++		public unowned Clutter.Interval get_interval (string property_name);
++		public bool get_loop ();
++		public ulong get_mode ();
++		public unowned Clutter.Timeline get_timeline ();
++		public bool has_property (string property_name);
++		public void set_duration (uint msecs);
++		public void set_loop (bool loop);
++		public void set_mode (ulong mode);
++		public void set_object (GLib.Object object);
++		public void set_timeline (Clutter.Timeline? timeline);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.0")]
++		public Clutter.Alpha alpha { owned get; set; }
++		public uint duration { get; set; }
++		public bool loop { get; set; }
++		public ulong mode { get; set; }
++		[NoAccessorMethod]
++		public GLib.Object object { owned get; set; }
++		public Clutter.Timeline timeline { get; set; }
++		public virtual signal void completed ();
++		public virtual signal void started ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class AnyEvent : Clutter.Event {
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")]
++	[Version (since = "0.4")]
++	public class Backend : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Backend ();
++		[NoWrapper]
++		public virtual void add_options (GLib.OptionGroup group);
++		[NoWrapper]
++		public virtual bool create_context () throws GLib.Error;
++		[NoWrapper]
++		public virtual unowned Clutter.StageWindow create_stage (Clutter.Stage wrapper) throws GLib.Error;
++		[NoWrapper]
++		public virtual void ensure_context (Clutter.Stage stage);
++		public unowned Clutter.Seat get_default_seat ();
++		[NoWrapper]
++		public virtual Clutter.FeatureFlags get_features ();
++		[Version (since = "0.8")]
++		public unowned Cairo.FontOptions get_font_options ();
++		public unowned Clutter.InputMethod get_input_method ();
++		public double get_resolution ();
++		[NoWrapper]
++		public virtual void init_events ();
++		[NoWrapper]
++		public virtual void init_features ();
++		[NoWrapper]
++		public virtual bool post_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual bool pre_parse () throws GLib.Error;
++		[NoWrapper]
++		public virtual void redraw (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public void set_font_options (Cairo.FontOptions options);
++		public void set_input_method (Clutter.InputMethod method);
++		[Version (since = "1.0")]
++		public signal void font_changed ();
++		[Version (since = "1.0")]
++		public signal void resolution_changed ();
++		[Version (since = "1.4")]
++		public signal void settings_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bin_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BinLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BinLayout (Clutter.BinAlignment x_align = Clutter.BinAlignment.START, Clutter.BinAlignment y_align = Clutter.BinAlignment.START);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment x_align { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public Clutter.BinAlignment y_align { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_bind_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public class BindConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public BindConstraint (Clutter.Actor? source, Clutter.BindCoordinate coordinate, float offset);
++		public Clutter.BindCoordinate get_coordinate ();
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_coordinate (Clutter.BindCoordinate coordinate);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		public Clutter.BindCoordinate coordinate { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_binding_pool_get_type ()")]
++	[Version (since = "1.0")]
++	public class BindingPool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public BindingPool (string name);
++		public bool activate (uint key_val, Clutter.ModifierType modifiers, GLib.Object gobject);
++		public void block_action (string action_name);
++		public static unowned Clutter.BindingPool find (string name);
++		public unowned string find_action (uint key_val, Clutter.ModifierType modifiers);
++		public static unowned Clutter.BindingPool get_for_class (void* klass);
++		public void install_action (string action_name, uint key_val, Clutter.ModifierType modifiers, owned Clutter.BindingActionFunc callback);
++		public void install_closure (string action_name, uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void override_action (uint key_val, Clutter.ModifierType modifiers, owned GLib.Callback callback);
++		public void override_closure (uint key_val, Clutter.ModifierType modifiers, GLib.Closure closure);
++		public void remove_action (uint key_val, Clutter.ModifierType modifiers);
++		public void unblock_action (string action_name);
++		[NoAccessorMethod]
++		public string name { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_blur_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class BlurEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BlurEffect ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_get_type ()")]
++	[Version (since = "1.2")]
++	public class Box : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Box (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public unowned Clutter.LayoutManager get_layout_manager ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack (Clutter.Actor actor, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_after (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_at (Clutter.Actor actor, int position, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void pack_before (Clutter.Actor actor, Clutter.Actor? sibling, ...);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void packv (Clutter.Actor actor, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] values);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_color (Clutter.Color? color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public void set_layout_manager (Clutter.LayoutManager manager);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.2")]
++		public bool color_set { get; set; }
++		public Clutter.LayoutManager layout_manager { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_box_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class BoxLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public BoxLayout ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_alignment (Clutter.Actor actor, out Clutter.BoxAlignment x_align, out Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint get_easing_duration ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong get_easing_mode ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_expand (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void get_fill (Clutter.Actor actor, out bool x_fill, out bool y_fill);
++		[Version (since = "1.4")]
++		public bool get_homogeneous ();
++		[Version (since = "1.12")]
++		public Clutter.Orientation get_orientation ();
++		public bool get_pack_start ();
++		public uint get_spacing ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_use_animations ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool get_vertical ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void pack (Clutter.Actor actor, bool expand, bool x_fill, bool y_fill, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_alignment (Clutter.Actor actor, Clutter.BoxAlignment x_align, Clutter.BoxAlignment y_align);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_easing_mode (ulong mode);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_expand (Clutter.Actor actor, bool expand);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_fill (Clutter.Actor actor, bool x_fill, bool y_fill);
++		[Version (since = "1.4")]
++		public void set_homogeneous (bool homogeneous);
++		[Version (since = "1.12")]
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_pack_start (bool pack_start);
++		public void set_spacing (uint spacing);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_use_animations (bool animate);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public void set_vertical (bool vertical);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public uint easing_duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public ulong easing_mode { get; set; }
++		[Version (since = "1.4")]
++		public bool homogeneous { get; set; }
++		[Version (since = "1.12")]
++		public Clutter.Orientation orientation { get; set; }
++		public bool pack_start { get; set; }
++		public uint spacing { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool use_animations { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.2")]
++		public bool vertical { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")]
++	[Version (since = "1.10")]
++	public class BrightnessContrastEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public BrightnessContrastEffect ();
++		public void get_brightness (out float red, out float green, out float blue);
++		public void get_contrast (out float red, out float green, out float blue);
++		public void set_brightness (float brightness);
++		public void set_brightness_full (float red, float green, float blue);
++		public void set_contrast (float contrast);
++		public void set_contrast_full (float red, float green, float blue);
++		[NoAccessorMethod]
++		public Clutter.Color brightness { owned get; set; }
++		[NoAccessorMethod]
++		public Clutter.Color contrast { owned get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ButtonEvent : Clutter.Event {
++		public double axes;
++		public uint32 button;
++		public uint click_count;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")]
++	[Version (since = "1.10")]
++	public class Canvas : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Canvas ();
++		public float get_scale_factor ();
++		public void set_scale_factor (float scale);
++		public bool set_size (int width, int height);
++		[NoAccessorMethod]
++		public int height { get; set; }
++		public float scale_factor { get; set; }
++		[NoAccessorMethod]
++		public int width { get; set; }
++		public virtual signal bool draw (Cairo.Context cr, int width, int height);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_child_meta_get_type ()")]
++	[Version (since = "0.8")]
++	public abstract class ChildMeta : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected ChildMeta ();
++		public unowned Clutter.Actor get_actor ();
++		public unowned Clutter.Container get_container ();
++		public Clutter.Actor actor { get; construct; }
++		public Clutter.Container container { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_click_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class ClickAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ClickAction ();
++		public uint get_button ();
++		[Version (since = "1.8")]
++		public void get_coords (out float press_x, out float press_y);
++		[Version (since = "1.6")]
++		public Clutter.ModifierType get_state ();
++		public void release ();
++		[NoAccessorMethod]
++		public bool held { get; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_threshold { get; set; }
++		[NoAccessorMethod]
++		public bool pressed { get; }
++		public virtual signal void clicked (Clutter.Actor actor);
++		[Version (since = "1.8")]
++		public virtual signal bool long_press (Clutter.Actor actor, Clutter.LongPressState state);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clip_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ClipNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ClipNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_clone_get_type ()")]
++	[Version (since = "1.0")]
++	public class Clone : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Clone (Clutter.Actor source);
++		public unowned Clutter.Actor get_source ();
++		public void set_source (Clutter.Actor? source);
++		public Clutter.Actor source { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_color_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class ColorNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public ColorNode (Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_colorize_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ColorizeEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public ColorizeEffect (Clutter.Color tint);
++		public Clutter.Color get_tint ();
++		public void set_tint (Clutter.Color tint);
++		public Clutter.Color tint { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_constraint_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Constraint : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Constraint ();
++		[NoWrapper]
++		public virtual void update_allocation (Clutter.Actor actor, Clutter.ActorBox allocation);
++		[NoWrapper]
++		public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, float minimum_size, float natural_size);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class CrossingEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Actor related;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class DeformEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false)]
++		protected DeformEffect ();
++		[NoWrapper]
++		public virtual void deform_vertex (float width, float height, Cogl.TextureVertex vertex);
++		public unowned Cogl.Handle get_back_material ();
++		public void get_n_tiles (out uint x_tiles, out uint y_tiles);
++		public void invalidate ();
++		public void set_back_material (Cogl.Handle? material);
++		public void set_n_tiles (uint x_tiles, uint y_tiles);
++		[NoAccessorMethod]
++		public uint x_tiles { get; set; }
++		[NoAccessorMethod]
++		public uint y_tiles { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_desaturate_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class DesaturateEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public DesaturateEffect (double factor);
++		public double get_factor ();
++		public void set_factor (double factor);
++		public double factor { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")]
++	[Version (since = "1.4")]
++	public class DragAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DragAction ();
++		public bool get_drag_area (Graphene.Rect drag_area);
++		public Clutter.DragAxis get_drag_axis ();
++		public unowned Clutter.Actor get_drag_handle ();
++		public void get_drag_threshold (out uint x_threshold, out uint y_threshold);
++		public void get_motion_coords (out float motion_x, out float motion_y);
++		public void get_press_coords (out float press_x, out float press_y);
++		public void set_drag_area (Graphene.Rect? drag_area);
++		public void set_drag_axis (Clutter.DragAxis axis);
++		public void set_drag_handle (Clutter.Actor? handle);
++		public void set_drag_threshold (int x_threshold, int y_threshold);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public Graphene.Rect drag_area { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public bool drag_area_set { get; }
++		public Clutter.DragAxis drag_axis { get; set; }
++		public Clutter.Actor drag_handle { get; set; }
++		[NoAccessorMethod]
++		public int x_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int y_drag_threshold { get; set; }
++		public virtual signal void drag_begin (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_end (Clutter.Actor actor, float event_x, float event_y, Clutter.ModifierType modifiers);
++		public virtual signal void drag_motion (Clutter.Actor actor, float delta_x, float delta_y);
++		[Version (since = "1.12")]
++		public virtual signal bool drag_progress (Clutter.Actor actor, float delta_x, float delta_y);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drop_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class DropAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public DropAction ();
++		public virtual signal bool can_drop (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void drop (Clutter.Actor actor, float event_x, float event_y);
++		[Version (since = "1.12")]
++		public signal void drop_cancel (Clutter.Actor actor, float event_x, float event_y);
++		public virtual signal void over_in (Clutter.Actor actor);
++		public virtual signal void over_out (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class Effect : Clutter.ActorMeta {
++		[CCode (has_construct_function = false)]
++		protected Effect ();
++		[NoWrapper]
++		public virtual bool modify_paint_volume (Clutter.PaintVolume volume);
++		[NoWrapper]
++		public virtual void paint (Clutter.PaintContext paint_context, Clutter.EffectPaintFlags flags);
++		[NoWrapper]
++		public virtual void pick (Clutter.PickContext pick_context);
++		[NoWrapper]
++		public virtual void post_paint (Clutter.PaintContext paint_context);
++		[NoWrapper]
++		public virtual bool pre_paint (Clutter.PaintContext paint_context);
++		[Version (since = "1.8")]
++		public void queue_repaint ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_get_type ()")]
++	[Compact]
++	[Version (since = "0.2")]
++	public class Event {
++		public Clutter.EventType type;
++		[CCode (has_construct_function = false)]
++		public Event (Clutter.EventType type);
++		public Clutter.Event copy ();
++		public void free ();
++		[Version (since = "1.12")]
++		public double get_angle (Clutter.Event target);
++		[Version (since = "1.6")]
++		public double get_axes (out uint n_axes);
++		[Version (since = "1.0")]
++		public uint32 get_button ();
++		[Version (since = "1.0")]
++		public uint get_click_count ();
++		[Version (since = "0.4")]
++		public void get_coords (out float x, out float y);
++		[Version (since = "1.0")]
++		public unowned Clutter.InputDevice get_device ();
++		public int get_device_id ();
++		[Version (since = "1.28")]
++		public unowned Clutter.InputDeviceTool get_device_tool ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.12")]
++		public float get_distance (Clutter.Event target);
++		[Version (since = "1.10")]
++		public unowned Clutter.EventSequence get_event_sequence ();
++		[Version (since = "1.0")]
++		public Clutter.EventFlags get_flags ();
++		[Version (since = "1.24")]
++		public void get_gesture_motion_delta (out double dx, out double dy);
++		public Clutter.TouchpadGesturePhase get_gesture_phase ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_angle_delta ();
++		[Version (since = "1.24")]
++		public double get_gesture_pinch_scale ();
++		[Version (since = "1.0")]
++		public uint16 get_key_code ();
++		[Version (since = "1.0")]
++		public uint get_key_symbol ();
++		public unichar get_key_unicode ();
++		public uint get_mode_group ();
++		public bool get_pad_event_details (out uint number, out uint mode, out double value);
++		[Version (since = "1.12")]
++		public void get_position (Graphene.Point position);
++		[Version (since = "1.0")]
++		public unowned Clutter.Actor get_related ();
++		[Version (since = "1.10")]
++		public void get_scroll_delta (out double dx, out double dy);
++		[Version (since = "1.0")]
++		public Clutter.ScrollDirection get_scroll_direction ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollFinishFlags get_scroll_finish_flags ();
++		[Version (since = "1.26")]
++		public Clutter.ScrollSource get_scroll_source ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_source ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_source_device ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_stage ();
++		[Version (since = "0.4")]
++		public Clutter.ModifierType get_state ();
++		[Version (since = "1.16")]
++		public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state);
++		[Version (since = "0.4")]
++		public uint32 get_time ();
++		[Version (since = "1.24")]
++		public uint get_touchpad_gesture_finger_count ();
++		[CCode (cname = "clutter_event_type")]
++		public Clutter.EventType get_type ();
++		[Version (since = "1.12")]
++		public bool has_control_modifier ();
++		[Version (since = "1.12")]
++		public bool has_shift_modifier ();
++		[Version (since = "1.12")]
++		public bool is_pointer_emulated ();
++		[Version (since = "0.6")]
++		public void put ();
++		[Version (since = "1.8")]
++		public void set_button (uint32 button);
++		[Version (since = "1.8")]
++		public void set_coords (float x, float y);
++		[Version (since = "1.6")]
++		public void set_device (Clutter.InputDevice? device);
++		[Version (since = "1.28")]
++		public void set_device_tool (Clutter.InputDeviceTool? tool);
++		[Version (since = "1.8")]
++		public void set_flags (Clutter.EventFlags flags);
++		[Version (since = "1.8")]
++		public void set_key_code (uint16 key_code);
++		[Version (since = "1.8")]
++		public void set_key_symbol (uint key_sym);
++		[Version (since = "1.8")]
++		public void set_key_unicode (unichar key_unicode);
++		[Version (since = "1.8")]
++		public void set_related (Clutter.Actor? actor);
++		[Version (since = "1.10")]
++		public void set_scroll_delta (double dx, double dy);
++		[Version (since = "1.8")]
++		public void set_scroll_direction (Clutter.ScrollDirection direction);
++		[Version (since = "1.8")]
++		public void set_source (Clutter.Actor? actor);
++		[Version (since = "1.8")]
++		public void set_source_device (Clutter.InputDevice? device);
++		[Version (since = "1.8")]
++		public void set_stage (Clutter.Stage? stage);
++		[Version (since = "1.8")]
++		public void set_state (Clutter.ModifierType state);
++		[Version (since = "1.8")]
++		public void set_time (uint32 time_);
++		public Clutter.AnyEvent any {[CCode (cname = "(ClutterAnyEvent *)")]  get; }
++		public Clutter.ButtonEvent button {[CCode (cname = "(ClutterButtonEvent *)")]  get; }
++		public Clutter.CrossingEvent crossing {[CCode (cname = "(ClutterCrossingEvent *)")]  get; }
++		public Clutter.KeyEvent key {[CCode (cname = "(ClutterKeyEvent *)")]  get; }
++		public Clutter.MotionEvent motion {[CCode (cname = "(ClutterMotionEvent *)")]  get; }
++		public Clutter.ScrollEvent scroll {[CCode (cname = "(ClutterScrollEvent *)")]  get; }
++		public Clutter.StageStateEvent stage_state {[CCode (cname = "(ClutterStageStateEvent *)")]  get; }
++		public Clutter.TouchEvent touch {[CCode (cname = "(ClutterTouchEvent *)")]  get; }
++		public Clutter.TouchpadPinchEvent touchpad_pinch {[CCode (cname = "(ClutterTouchpadPinchEvent *)")]  get; }
++		public Clutter.TouchpadSwipeEvent touchpad_swipe {[CCode (cname = "(ClutterTouchpadSwipeEvent *)")]  get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")]
++	[Compact]
++	[Version (since = "1.12")]
++	public class EventSequence {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_fixed_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FixedLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FixedLayout ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_flow_layout_get_type ()")]
++	[Version (since = "1.2")]
++	public class FlowLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public FlowLayout (Clutter.FlowOrientation orientation);
++		public float get_column_spacing ();
++		public void get_column_width (out float min_width, out float max_width);
++		public bool get_homogeneous ();
++		public Clutter.FlowOrientation get_orientation ();
++		public void get_row_height (out float min_height, out float max_height);
++		public float get_row_spacing ();
++		[Version (since = "1.16")]
++		public bool get_snap_to_grid ();
++		public void set_column_spacing (float spacing);
++		public void set_column_width (float min_width, float max_width);
++		public void set_homogeneous (bool homogeneous);
++		public void set_orientation (Clutter.FlowOrientation orientation);
++		public void set_row_height (float min_height, float max_height);
++		public void set_row_spacing (float spacing);
++		[Version (since = "1.16")]
++		public void set_snap_to_grid (bool snap_to_grid);
++		public float column_spacing { get; set; }
++		public bool homogeneous { get; set; }
++		[NoAccessorMethod]
++		public float max_column_width { get; set; }
++		[NoAccessorMethod]
++		public float max_row_height { get; set; }
++		[NoAccessorMethod]
++		public float min_column_width { get; set; }
++		[NoAccessorMethod]
++		public float min_row_height { get; set; }
++		public Clutter.FlowOrientation orientation { get; set construct; }
++		public float row_spacing { get; set; }
++		[Version (since = "1.16")]
++		public bool snap_to_grid { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_gesture_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class GestureAction : Clutter.Action {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public GestureAction ();
++		[Version (since = "1.12")]
++		public void cancel ();
++		[NoWrapper]
++		public virtual bool gesture_prepare (Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public unowned Clutter.InputDevice get_device (uint point);
++		[Version (since = "1.14")]
++		public unowned Clutter.Event get_last_event (uint point);
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.12")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		[Version (since = "1.12")]
++		public uint get_n_current_points ();
++		[Version (since = "1.12")]
++		public int get_n_touch_points ();
++		public void get_press_coords (uint point, out float press_x, out float press_y);
++		public void get_release_coords (uint point, out float release_x, out float release_y);
++		[Version (since = "1.12")]
++		public unowned Clutter.EventSequence get_sequence (uint point);
++		[Version (since = "1.18")]
++		public void get_threshold_trigger_distance (out float x, out float y);
++		[Version (since = "1.20")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_edge ();
++		[Version (deprecated = true, deprecated_since = "1.20", since = "1.18")]
++		public Clutter.GestureTriggerEdge get_threshold_trigger_egde ();
++		[Version (since = "1.12")]
++		public float get_velocity (uint point, out float velocity_x, out float velocity_y);
++		[Version (since = "1.12")]
++		public void set_n_touch_points (int nb_points);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_distance (float x, float y);
++		[Version (since = "1.18")]
++		public void set_threshold_trigger_edge (Clutter.GestureTriggerEdge edge);
++		[Version (since = "1.16")]
++		public int n_touch_points { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_x { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.18")]
++		public float threshold_trigger_distance_y { get; construct; }
++		[Version (since = "1.18")]
++		public Clutter.GestureTriggerEdge threshold_trigger_edge { get; construct; }
++		public virtual signal bool gesture_begin (Clutter.Actor actor);
++		public virtual signal void gesture_cancel (Clutter.Actor actor);
++		public virtual signal void gesture_end (Clutter.Actor actor);
++		public virtual signal bool gesture_progress (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")]
++	[Version (since = "1.12")]
++	public class GridLayout : Clutter.LayoutManager {
++		[CCode (has_construct_function = false, type = "ClutterLayoutManager*")]
++		public GridLayout ();
++		public void attach (Clutter.Actor child, int left, int top, int width, int height);
++		public void attach_next_to (Clutter.Actor child, Clutter.Actor? sibling, Clutter.GridPosition side, int width, int height);
++		public unowned Clutter.Actor get_child_at (int left, int top);
++		public bool get_column_homogeneous ();
++		public uint get_column_spacing ();
++		public Clutter.Orientation get_orientation ();
++		public bool get_row_homogeneous ();
++		public uint get_row_spacing ();
++		public void insert_column (int position);
++		public void insert_next_to (Clutter.Actor sibling, Clutter.GridPosition side);
++		public void insert_row (int position);
++		public void set_column_homogeneous (bool homogeneous);
++		public void set_column_spacing (uint spacing);
++		public void set_orientation (Clutter.Orientation orientation);
++		public void set_row_homogeneous (bool homogeneous);
++		public void set_row_spacing (uint spacing);
++		public bool column_homogeneous { get; set; }
++		public uint column_spacing { get; set; }
++		public Clutter.Orientation orientation { get; set; }
++		public bool row_homogeneous { get; set; }
++		public uint row_spacing { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_group_get_type ()")]
++	[Version (since = "0.2")]
++	public class Group : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Group ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public int get_n_children ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public unowned Clutter.Actor get_nth_child (int index_);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void remove_all ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")]
++	[Version (since = "1.10")]
++	public class Image : GLib.Object, Clutter.Content {
++		[CCode (has_construct_function = false, type = "ClutterContent*")]
++		public Image ();
++		public unowned Cogl.Texture get_texture ();
++		public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error;
++		[Version (since = "1.12")]
++		public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++		public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_get_type ()")]
++	public class InputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDevice ();
++		[Version (since = "1.6")]
++		public unowned Clutter.InputDevice get_associated_device ();
++		[Version (since = "1.6")]
++		public Clutter.InputAxis get_axis (uint index_);
++		[Version (since = "1.6")]
++		public bool get_axis_value ([CCode (array_length = false)] double[] axes, Clutter.InputAxis axis, out double value);
++		[Version (since = "1.12")]
++		public bool get_coords (Clutter.EventSequence? sequence, Graphene.Point point);
++		[Version (since = "1.0")]
++		public int get_device_id ();
++		[Version (since = "1.6")]
++		public Clutter.InputMode get_device_mode ();
++		[Version (since = "1.2")]
++		public unowned string get_device_name ();
++		public unowned string get_device_node ();
++		[Version (since = "1.0")]
++		public Clutter.InputDeviceType get_device_type ();
++		[Version (since = "1.6")]
++		public bool get_enabled ();
++		[Version (since = "1.10")]
++		public unowned Clutter.Actor get_grabbed_actor ();
++		public virtual int get_group_n_modes (int group);
++		[Version (since = "1.6")]
++		public bool get_has_cursor ();
++		[Version (since = "1.6")]
++		public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers);
++		public Clutter.InputDeviceMapping get_mapping_mode ();
++		public int get_mode_switch_button_group (uint button);
++		[Version (since = "1.16")]
++		public Clutter.ModifierType get_modifier_state ();
++		[Version (since = "1.6")]
++		public uint get_n_axes ();
++		[Version (since = "1.6")]
++		public uint get_n_keys ();
++		public int get_n_mode_groups ();
++		public int get_n_rings ();
++		public int get_n_strips ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Actor get_pointer_actor ();
++		[Version (since = "1.2")]
++		public unowned Clutter.Stage get_pointer_stage ();
++		[Version (since = "1.22")]
++		public unowned string get_product_id ();
++		public unowned Clutter.Seat get_seat ();
++		[Version (since = "1.6")]
++		public GLib.List<weak Clutter.InputDevice> get_slave_devices ();
++		[Version (since = "1.22")]
++		public unowned string get_vendor_id ();
++		[Version (since = "1.10")]
++		public void grab (Clutter.Actor actor);
++		public virtual bool is_grouped (Clutter.InputDevice other_device);
++		public virtual bool is_mode_switch_button (uint group, uint button);
++		[Version (since = "1.10")]
++		public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode);
++		[Version (since = "1.12")]
++		public unowned Clutter.Actor sequence_get_grabbed_actor (Clutter.EventSequence sequence);
++		[Version (since = "1.12")]
++		public void sequence_grab (Clutter.EventSequence sequence, Clutter.Actor actor);
++		[Version (since = "1.12")]
++		public void sequence_ungrab (Clutter.EventSequence sequence);
++		[Version (since = "1.6")]
++		public void set_enabled (bool enabled);
++		[Version (since = "1.6")]
++		public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers);
++		public void set_mapping_mode (Clutter.InputDeviceMapping mapping);
++		[Version (since = "1.10")]
++		public void ungrab ();
++		[Version (since = "1.2")]
++		public void update_from_event (Clutter.Event event, bool update_stage);
++		[NoWrapper]
++		public virtual void update_from_tool (Clutter.InputDeviceTool tool);
++		[NoAccessorMethod]
++		[Version (since = "1.6")]
++		public Clutter.Backend backend { owned get; construct; }
++		public Clutter.InputMode device_mode { get; construct; }
++		public string device_node { get; construct; }
++		[Version (since = "1.2")]
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[Version (since = "1.6")]
++		public bool enabled { get; set; }
++		[Version (since = "1.6")]
++		public bool has_cursor { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public int id { get; construct; }
++		public Clutter.InputDeviceMapping mapping_mode { get; set; }
++		[Version (since = "1.6")]
++		public uint n_axes { get; }
++		public int n_mode_groups { get; construct; }
++		public int n_rings { get; construct; }
++		public int n_strips { get; construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.2")]
++		public string name { owned get; construct; }
++		[Version (since = "1.22")]
++		public string product_id { get; construct; }
++		public Clutter.Seat seat { get; construct; }
++		[Version (since = "1.22")]
++		public string vendor_id { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_device_tool_get_type ()")]
++	public abstract class InputDeviceTool : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputDeviceTool ();
++		public uint64 get_id ();
++		[Version (since = "1.28")]
++		public uint64 get_serial ();
++		[Version (since = "1.28")]
++		public Clutter.InputDeviceToolType get_tool_type ();
++		public uint64 id { get; construct; }
++		public uint64 serial { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.InputDeviceToolType type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_focus_get_type ()")]
++	public abstract class InputFocus : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputFocus ();
++		[NoWrapper]
++		public virtual void commit_text (string text);
++		[NoWrapper]
++		public virtual void delete_surrounding (uint offset, uint len);
++		public bool filter_key_event (Clutter.KeyEvent key);
++		[NoWrapper]
++		public virtual void focus_in (Clutter.InputMethod input_method);
++		[NoWrapper]
++		public virtual void focus_out ();
++		public bool is_focused ();
++		[NoWrapper]
++		public virtual void request_surrounding ();
++		public void reset ();
++		public void set_can_show_preedit (bool can_show_preedit);
++		public void set_content_hints (Clutter.InputContentHintFlags hint);
++		public void set_content_purpose (Clutter.InputContentPurpose purpose);
++		public void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		[NoWrapper]
++		public virtual void set_preedit_text (string preedit, uint cursor);
++		public void set_surrounding (string text, uint cursor, uint anchor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_input_method_get_type ()")]
++	public abstract class InputMethod : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected InputMethod ();
++		[NoWrapper]
++		public virtual bool filter_key_event (Clutter.Event key);
++		public virtual void focus_in (Clutter.InputFocus actor);
++		public virtual void focus_out ();
++		public void forward_key (uint32 keyval, uint32 keycode, uint32 state, uint64 time_, bool press);
++		public void notify_key_event (Clutter.Event event, bool filtered);
++		[NoWrapper]
++		public virtual void reset ();
++		[NoWrapper]
++		public virtual void set_cursor_location (Graphene.Rect rect);
++		public void set_input_panel_state (Clutter.InputPanelState state);
++		public void set_preedit_text (string? preedit, uint cursor);
++		[NoWrapper]
++		public virtual void set_surrounding (string text, uint cursor, uint anchor);
++		[NoWrapper]
++		public virtual void update_content_hints (Clutter.InputContentHintFlags hint);
++		[NoWrapper]
++		public virtual void update_content_purpose (Clutter.InputContentPurpose purpose);
++		[NoAccessorMethod]
++		public bool can_show_preedit { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentHintFlags content_hints { get; set; }
++		[NoAccessorMethod]
++		public Clutter.InputContentPurpose content_purpose { get; set; }
++		[HasEmitter]
++		public signal void commit (string text);
++		public signal void cursor_location_changed (Graphene.Rect object);
++		[HasEmitter]
++		public signal void delete_surrounding (uint offset, uint len);
++		public signal void input_panel_state (Clutter.InputPanelState object);
++		[HasEmitter]
++		public signal void request_surrounding ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_interval_get_type ()")]
++	[Version (since = "1.0")]
++	public class Interval : GLib.InitiallyUnowned, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		public Interval (GLib.Type gtype, ...);
++		public Clutter.Interval clone ();
++		[Version (since = "1.4")]
++		public unowned GLib.Value? compute (double factor);
++		public virtual bool compute_value (double factor, out GLib.Value value);
++		public GLib.Value get_final_value ();
++		public GLib.Value get_initial_value ();
++		public void get_interval (...);
++		public GLib.Type get_value_type ();
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public unowned GLib.Value? peek_final_value ();
++		public unowned GLib.Value? peek_initial_value ();
++		public static void register_progress_func (GLib.Type value_type, Clutter.ProgressFunc func);
++		[Version (since = "1.10")]
++		public void set_final (...);
++		public void set_final_value (GLib.Value value);
++		[Version (since = "1.10")]
++		public void set_initial (...);
++		public void set_initial_value (GLib.Value value);
++		public void set_interval (...);
++		public virtual bool validate (GLib.ParamSpec pspec);
++		[CCode (has_construct_function = false)]
++		public Interval.with_values (GLib.Type gtype, GLib.Value? initial, GLib.Value? final);
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value final { owned get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.12")]
++		public GLib.Value initial { owned get; set; }
++		public GLib.Type value_type { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class KeyEvent : Clutter.Event {
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public uint16 hardware_keycode;
++		public uint keyval;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public unichar unicode_value;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")]
++	[Version (since = "1.12")]
++	public class KeyframeTransition : Clutter.PropertyTransition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public KeyframeTransition (string property_name);
++		public void clear ();
++		public void get_key_frame (uint index_, out double key, out Clutter.AnimationMode mode, out GLib.Value value);
++		public uint get_n_key_frames ();
++		public void set_key_frame (uint index_, double key, Clutter.AnimationMode mode, GLib.Value value);
++		public void set_key_frames ([CCode (array_length_cname = "n_key_frames", array_length_pos = 0.5, array_length_type = "guint")] double[] key_frames);
++		public void set_modes ([CCode (array_length_cname = "n_modes", array_length_pos = 0.5, array_length_type = "guint")] Clutter.AnimationMode[] modes);
++		public void set_values ([CCode (array_length_cname = "n_values", array_length_pos = 0.5, array_length_type = "guint")] GLib.Value[] values);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keymap_get_type ()")]
++	public abstract class Keymap : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Keymap ();
++		public virtual bool get_caps_lock_state ();
++		public virtual Pango.Direction get_direction ();
++		public virtual bool get_num_lock_state ();
++		public signal void state_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layer_node_get_type ()")]
++	public class LayerNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public LayerNode (Cogl.Matrix projection, Cairo.Rectangle viewport, float width, float height, uint8 opacity);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_manager_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutManager : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		protected LayoutManager ();
++		public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags);
++		public void child_get (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_get_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		public void child_set (Clutter.Container container, Clutter.Actor actor, ...);
++		public void child_set_property (Clutter.Container container, Clutter.Actor actor, string property_name, GLib.Value value);
++		[NoWrapper]
++		public virtual unowned Clutter.LayoutMeta create_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual void end_animation ();
++		public unowned GLib.ParamSpec find_child_property (string name);
++		[NoWrapper]
++		public virtual double get_animation_progress ();
++		[Version (since = "1.0")]
++		public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor);
++		[NoWrapper]
++		public virtual GLib.Type get_child_meta_type ();
++		public virtual void get_preferred_height (Clutter.Container container, float for_width, out float min_height_p, out float nat_height_p);
++		public virtual void get_preferred_width (Clutter.Container container, float for_height, out float min_width_p, out float nat_width_p);
++		[CCode (array_length_pos = 0.1, array_length_type = "guint")]
++		public GLib.ParamSpec[] list_child_properties ();
++		public virtual void set_container (Clutter.Container? container);
++		[HasEmitter]
++		public virtual signal void layout_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_layout_meta_get_type ()")]
++	[Version (since = "1.2")]
++	public abstract class LayoutMeta : Clutter.ChildMeta {
++		[CCode (has_construct_function = false)]
++		protected LayoutMeta ();
++		public unowned Clutter.LayoutManager get_manager ();
++		public Clutter.LayoutManager manager { get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_margin_get_type ()")]
++	[Compact]
++	[Version (since = "1.10")]
++	public class Margin {
++		public float bottom;
++		public float left;
++		public float right;
++		public float top;
++		[CCode (has_construct_function = false)]
++		public Margin ();
++		public Clutter.Margin copy ();
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class MotionEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public abstract class OffscreenEffect : Clutter.Effect {
++		[CCode (has_construct_function = false)]
++		protected OffscreenEffect ();
++		public virtual Cogl.Handle create_texture (float width, float height);
++		[Version (since = "1.14")]
++		public bool get_target_rect (out unowned Graphene.Rect rect);
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public bool get_target_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public unowned Cogl.Handle get_texture ();
++		public virtual void paint_target (Clutter.PaintContext paint_context);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class PageTurnEffect : Clutter.DeformEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		public PageTurnEffect (double period, double angle, float radius);
++		public double get_angle ();
++		public double get_period ();
++		public float get_radius ();
++		public void set_angle (double angle);
++		public void set_period (double period);
++		public void set_radius (float radius);
++		public double angle { get; set; }
++		public double period { get; set; }
++		public float radius { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_context_ref", type_id = "clutter_paint_context_get_type ()", unref_function = "clutter_paint_context_unref")]
++	[Compact]
++	public class PaintContext {
++		public void destroy ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void pop_framebuffer ();
++		public void push_framebuffer (Cogl.Framebuffer framebuffer);
++		public unowned Clutter.PaintContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PaintNode ();
++		public void add_child (Clutter.PaintNode child);
++		public void add_multitexture_rectangle (Clutter.ActorBox rect, float text_coords, uint text_coords_len);
++		public void add_rectangle (Clutter.ActorBox rect);
++		public void add_texture_rectangle (Clutter.ActorBox rect, float x_1, float y_1, float x_2, float y_2);
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void paint (Clutter.PaintContext paint_context);
++		public unowned Clutter.PaintNode @ref ();
++		public void set_name (string name);
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_paint_volume_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class PaintVolume {
++		[Version (since = "1.6")]
++		public Clutter.PaintVolume copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[Version (since = "1.6")]
++		public float get_depth ();
++		[Version (since = "1.6")]
++		public float get_height ();
++		[Version (since = "1.6")]
++		public void get_origin (out unowned Graphene.Point3D vertex);
++		[Version (since = "1.6")]
++		public float get_width ();
++		[Version (since = "1.6")]
++		public void set_depth (float depth);
++		[Version (since = "1.6")]
++		public bool set_from_allocation (Clutter.Actor actor);
++		[Version (since = "1.6")]
++		public void set_height (float height);
++		[Version (since = "1.6")]
++		public void set_origin (Graphene.Point3D origin);
++		[Version (since = "1.6")]
++		public void set_width (float width);
++		[Version (since = "1.6")]
++		public void union (Clutter.PaintVolume another_pv);
++		[Version (since = "1.10")]
++		public void union_box (Clutter.ActorBox box);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pan_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class PanAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public PanAction ();
++		public double get_acceleration_factor ();
++		[Version (since = "1.24")]
++		public float get_constrained_motion_delta (uint point, out float delta_x, out float delta_y);
++		public double get_deceleration ();
++		public bool get_interpolate ();
++		public void get_interpolated_coords (out float interpolated_x, out float interpolated_y);
++		public float get_interpolated_delta (out float delta_x, out float delta_y);
++		[Version (since = "1.14")]
++		public void get_motion_coords (uint point, out float motion_x, out float motion_y);
++		[Version (since = "1.14")]
++		public float get_motion_delta (uint point, out float delta_x, out float delta_y);
++		public Clutter.PanAxis get_pan_axis ();
++		public void set_acceleration_factor (double factor);
++		public void set_deceleration (double rate);
++		public void set_interpolate (bool should_interpolate);
++		public void set_pan_axis (Clutter.PanAxis axis);
++		public double acceleration_factor { get; set; }
++		public double deceleration { get; set; }
++		public bool interpolate { get; set; }
++		public Clutter.PanAxis pan_axis { get; set; }
++		public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
++		public virtual signal void pan_stopped (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
++	public class ParamSpecUnit : GLib.ParamSpec {
++		[CCode (has_construct_function = false)]
++		protected ParamSpecUnit ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_get_type ()")]
++	[Version (since = "1.0")]
++	public class Path : GLib.InitiallyUnowned {
++		[CCode (has_construct_function = false)]
++		public Path ();
++		public void add_cairo_path (Cairo.Path cpath);
++		public void add_close ();
++		public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_line_to (int x, int y);
++		public void add_move_to (int x, int y);
++		public void add_node (Clutter.PathNode node);
++		public void add_rel_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3);
++		public void add_rel_line_to (int x, int y);
++		public void add_rel_move_to (int x, int y);
++		public bool add_string (string str);
++		public void clear ();
++		public void @foreach (Clutter.PathCallback callback);
++		public string get_description ();
++		public uint get_length ();
++		public uint get_n_nodes ();
++		public Clutter.PathNode get_node (uint index_);
++		public GLib.SList<weak Clutter.PathNode?> get_nodes ();
++		public uint get_position (double progress, out Clutter.Knot position);
++		public void insert_node (int index_, Clutter.PathNode node);
++		public void remove_node (uint index_);
++		public void replace_node (uint index_, Clutter.PathNode node);
++		public bool set_description (string str);
++		public void to_cairo_path (Cairo.Context cr);
++		[CCode (has_construct_function = false)]
++		public Path.with_description (string desc);
++		public string description { owned get; set; }
++		public uint length { get; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_path_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class PathConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public PathConstraint (Clutter.Path? path, float offset);
++		public float get_offset ();
++		public unowned Clutter.Path get_path ();
++		public void set_offset (float offset);
++		public void set_path (Clutter.Path? path);
++		public float offset { get; set; }
++		public Clutter.Path path { get; set; }
++		public signal void node_reached (Clutter.Actor actor, uint index);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_pick_context_ref", type_id = "clutter_pick_context_get_type ()", unref_function = "clutter_pick_context_unref")]
++	[Compact]
++	public class PickContext {
++		public void destroy ();
++		public unowned Clutter.PickContext @ref ();
++		public void unref ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_pipeline_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class PipelineNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false)]
++		protected PipelineNode ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_property_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public class PropertyTransition : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public PropertyTransition (string? property_name);
++		public unowned string get_property_name ();
++		public void set_property_name (string? property_name);
++		public string property_name { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rectangle_get_type ()")]
++	[Version (since = "0.2")]
++	public class Rectangle : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public Clutter.Color get_border_color ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public uint get_border_width ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_border_color (Clutter.Color color);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.2")]
++		public void set_border_width (uint width);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Rectangle.with_color (Clutter.Color color);
++		public Clutter.Color border_color { get; set; }
++		public uint border_width { get; set; }
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool has_border { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")]
++	public class RootNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public RootNode (Cogl.Framebuffer framebuffer, Clutter.Color clear_color, Cogl.BufferBit clear_flags);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_rotate_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class RotateAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public RotateAction ();
++		public virtual signal bool rotate (Clutter.Actor actor, double angle);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
++	[Version (since = "0.6")]
++	public class Script : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public Script ();
++		[Version (since = "0.8")]
++		public void add_search_paths ([CCode (array_length_cname = "n_paths", array_length_pos = 1.1, array_length_type = "gsize")] string[] paths);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public void add_states (string? name, Clutter.State state);
++		public void connect_signals (void* user_data);
++		public void connect_signals_full (Clutter.ScriptConnectFunc func);
++		public void ensure_objects ();
++		public unowned GLib.Object get_object (string name);
++		public int get_objects (...);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.8")]
++		public unowned Clutter.State get_states (string? name);
++		[Version (since = "1.10")]
++		public unowned string get_translation_domain ();
++		public virtual GLib.Type get_type_from_name (string type_name);
++		[Version (since = "0.8")]
++		public GLib.List<weak GLib.Object> list_objects ();
++		public uint load_from_data (string data, ssize_t length) throws GLib.Error;
++		public uint load_from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public uint load_from_resource (string resource_path) throws GLib.Error;
++		[Version (since = "0.8")]
++		public string lookup_filename (string filename);
++		[Version (since = "1.10")]
++		public void set_translation_domain (string? domain);
++		public void unmerge_objects (uint merge_id);
++		[NoAccessorMethod]
++		public string filename { owned get; }
++		[NoAccessorMethod]
++		public bool filename_set { get; }
++		[Version (since = "1.10")]
++		public string translation_domain { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scroll_actor_get_type ()")]
++	[Version (since = "1.12")]
++	public class ScrollActor : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public ScrollActor ();
++		public Clutter.ScrollMode get_scroll_mode ();
++		public void scroll_to_point (Graphene.Point point);
++		public void scroll_to_rect (Graphene.Rect rect);
++		public void set_scroll_mode (Clutter.ScrollMode mode);
++		public Clutter.ScrollMode scroll_mode { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class ScrollEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.ScrollDirection direction;
++		public Clutter.ScrollFinishFlags finish_flags;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public Clutter.ScrollSource scroll_source;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")]
++	public abstract class Seat : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Seat ();
++		[NoWrapper]
++		public virtual void apply_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual void bell_notify ();
++		public virtual void compress_motion (Clutter.Event event, Clutter.Event to_discard);
++		[NoWrapper]
++		public virtual void copy_event_data (Clutter.Event src, Clutter.Event dest);
++		public virtual Clutter.VirtualInputDevice create_virtual_device (Clutter.InputDeviceType device_type);
++		public void ensure_a11y_state ();
++		[NoWrapper]
++		public virtual void free_event_data (Clutter.Event event);
++		public void get_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public virtual unowned Clutter.InputDevice get_keyboard ();
++		public virtual unowned Clutter.Keymap get_keymap ();
++		public virtual unowned Clutter.InputDevice get_pointer ();
++		public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types ();
++		public virtual GLib.List<weak Clutter.InputDevice> list_devices ();
++		public void set_kbd_a11y_settings (Clutter.KbdA11ySettings settings);
++		public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type);
++		public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
++		public virtual void warp_pointer (int x, int y);
++		[NoAccessorMethod]
++		public Clutter.Backend backend { owned get; construct; }
++		public signal void device_added (Clutter.InputDevice object);
++		public signal void device_removed (Clutter.InputDevice object);
++		public signal void kbd_a11y_flags_changed (uint settings_flags, uint changed_mask);
++		public signal void kbd_a11y_mods_state_changed (uint latched_mask, uint locked_mask);
++		public signal void ptr_a11y_dwell_click_type_changed (Clutter.PointerA11yDwellClickType click_type);
++		public signal void ptr_a11y_timeout_started (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, uint delay);
++		public signal void ptr_a11y_timeout_stopped (Clutter.InputDevice device, Clutter.PointerA11yTimeoutType timeout_type, bool clicked);
++		public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_settings_get_type ()")]
++	[Version (since = "1.4")]
++	public class Settings : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected Settings ();
++		public static unowned Clutter.Settings get_default ();
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "1.4")]
++		public Clutter.Backend backend { construct; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int dnd_drag_threshold { get; set; }
++		[NoAccessorMethod]
++		public int double_click_distance { get; set; }
++		[NoAccessorMethod]
++		public int double_click_time { get; set; }
++		[NoAccessorMethod]
++		public int font_antialias { get; set; }
++		[NoAccessorMethod]
++		public int font_dpi { get; set; }
++		[NoAccessorMethod]
++		public string font_hint_style { owned get; set; }
++		[NoAccessorMethod]
++		public int font_hinting { get; set; }
++		[NoAccessorMethod]
++		public string font_name { owned get; set; }
++		[NoAccessorMethod]
++		public string font_subpixel_order { owned get; set; }
++		[NoAccessorMethod]
++		public uint fontconfig_timestamp { set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public int long_press_duration { get; set; }
++		[NoAccessorMethod]
++		public uint password_hint_time { get; set; }
++		[NoAccessorMethod]
++		public int unscaled_font_dpi { set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	public class Shader {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_effect_get_type ()")]
++	[Version (since = "1.4")]
++	public class ShaderEffect : Clutter.OffscreenEffect {
++		[CCode (has_construct_function = false, type = "ClutterEffect*")]
++		[Version (since = "1.8")]
++		public ShaderEffect (Clutter.ShaderType shader_type);
++		public unowned Cogl.Handle get_program ();
++		public unowned Cogl.Handle get_shader ();
++		[NoWrapper]
++		public virtual string get_static_shader_source ();
++		public bool set_shader_source (string source);
++		public void set_uniform_value (string name, GLib.Value value);
++		[NoAccessorMethod]
++		public Clutter.ShaderType shader_type { construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_float_get_type ()")]
++	public class ShaderFloat {
++		[CCode (has_construct_function = false)]
++		protected ShaderFloat ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_int_get_type ()")]
++	public class ShaderInt {
++		[CCode (has_construct_function = false)]
++		protected ShaderInt ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_shader_matrix_get_type ()")]
++	public class ShaderMatrix {
++		[CCode (has_construct_function = false)]
++		protected ShaderMatrix ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_snap_constraint_get_type ()")]
++	[Version (since = "1.6")]
++	public class SnapConstraint : Clutter.Constraint {
++		[CCode (has_construct_function = false, type = "ClutterConstraint*")]
++		public SnapConstraint (Clutter.Actor? source, Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge, float offset);
++		public void get_edges (out Clutter.SnapEdge from_edge, out Clutter.SnapEdge to_edge);
++		public float get_offset ();
++		public unowned Clutter.Actor get_source ();
++		public void set_edges (Clutter.SnapEdge from_edge, Clutter.SnapEdge to_edge);
++		public void set_offset (float offset);
++		public void set_source (Clutter.Actor? source);
++		[NoAccessorMethod]
++		public Clutter.SnapEdge from_edge { get; set construct; }
++		public float offset { get; set construct; }
++		public Clutter.Actor source { get; set construct; }
++		[NoAccessorMethod]
++		public Clutter.SnapEdge to_edge { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_get_type ()")]
++	[Version (since = "0.2")]
++	public class Stage : Clutter.Group, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "0.8")]
++		public Stage ();
++		public bool capture (bool paint, Cairo.RectangleInt rect, Clutter.Capture captures, int n_captures);
++		public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data);
++		[CCode (cname = "clutter_stage_event")]
++		[Version (since = "0.4")]
++		public bool emit_event (Clutter.Event event);
++		[Version (deprecated = true, since = "0.8")]
++		public void ensure_current ();
++		[Version (since = "1.0")]
++		public void ensure_redraw ();
++		[Version (since = "1.0")]
++		public void ensure_viewport ();
++		public void freeze_updates ();
++		[Version (since = "1.6")]
++		public bool get_accept_focus ();
++		public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y);
++		public bool get_capture_final_size (Cairo.RectangleInt rect, int width, int height, float scale);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color get_color ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public static unowned Clutter.Stage get_default ();
++		public int64 get_frame_counter ();
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor get_key_focus ();
++		[Version (since = "1.2")]
++		public void get_minimum_size (out uint width, out uint height);
++		[Version (since = "1.8")]
++		public bool get_motion_events_enabled ();
++		public Clutter.Perspective get_perspective ();
++		public Cairo.Region get_redraw_clip ();
++		[Version (since = "1.0")]
++		public bool get_throttle_motion_events ();
++		[Version (since = "0.4")]
++		public unowned string get_title ();
++		[Version (since = "1.2")]
++		public bool get_use_alpha ();
++		[Version (since = "0.4")]
++		public void hide_cursor ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public bool is_default ();
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.8")]
++		public void queue_redraw ();
++		[CCode (array_length = false)]
++		public uint8[] read_pixels (int x, int y, int width = -1, int height = -1);
++		[CCode (cname = "clutter_redraw")]
++		public void redraw ();
++		[Version (since = "1.6")]
++		public void set_accept_focus (bool accept_focus);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_color (Clutter.Color color);
++		[Version (since = "0.6")]
++		public void set_key_focus (Clutter.Actor? actor);
++		[Version (since = "1.2")]
++		public void set_minimum_size (uint width, uint height);
++		[Version (since = "1.8")]
++		public void set_motion_events_enabled (bool enabled);
++		public void set_perspective (Clutter.Perspective perspective);
++		[Version (since = "1.0")]
++		public void set_throttle_motion_events (bool throttle);
++		[Version (since = "0.4")]
++		public void set_title (string title);
++		[Version (since = "1.2")]
++		public void set_use_alpha (bool use_alpha);
++		public void show_cursor ();
++		public void thaw_updates ();
++		public void update_resource_scales ();
++		[Version (since = "1.6")]
++		public bool accept_focus { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public Clutter.Color color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_visible { get; set; }
++		[Version (since = "1.2")]
++		public Clutter.Actor key_focus { get; set; }
++		[Version (since = "0.8")]
++		public Clutter.Perspective perspective { get; set; }
++		[Version (since = "0.4")]
++		public string title { get; set; }
++		[Version (since = "1.2")]
++		public bool use_alpha { get; set; }
++		[Version (since = "0.6")]
++		public virtual signal void activate ();
++		[Version (since = "1.20")]
++		public signal void after_paint ();
++		[Version (since = "0.6")]
++		public virtual signal void deactivate ();
++		[Version (since = "1.2")]
++		public virtual signal bool delete_event (Clutter.Event event);
++		public virtual signal void paint_view (Clutter.StageView view);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_manager_get_type ()")]
++	[Version (since = "1.0")]
++	public class StageManager : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageManager ();
++		[Version (since = "0.8")]
++		public static unowned Clutter.StageManager get_default ();
++		[Version (since = "0.8")]
++		public unowned Clutter.Stage get_default_stage ();
++		[Version (since = "0.8")]
++		public GLib.SList<weak Clutter.Stage> list_stages ();
++		public unowned GLib.SList<Clutter.Stage> peek_stages ();
++		[Version (since = "0.8")]
++		public Clutter.Stage default_stage { get; }
++		[Version (since = "0.8")]
++		public virtual signal void stage_added (Clutter.Stage stage);
++		[Version (since = "0.8")]
++		public virtual signal void stage_removed (Clutter.Stage stage);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "0.2")]
++	public class StageStateEvent : Clutter.Event {
++		public Clutter.StageState changed_mask;
++		public Clutter.EventFlags flags;
++		public Clutter.StageState new_state;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_stage_view_get_type ()")]
++	public class StageView : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected StageView ();
++		public unowned Cogl.Framebuffer get_framebuffer ();
++		public void get_layout (Cairo.RectangleInt rect);
++		public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix);
++		public unowned Cogl.Framebuffer get_onscreen ();
++		public float get_scale ();
++		public void invalidate_offscreen_blit_pipeline ();
++		[NoWrapper]
++		public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline);
++		public void transform_to_onscreen (float x, float y);
++		[NoAccessorMethod]
++		public Cairo.RectangleInt layout { owned get; set construct; }
++		[NoAccessorMethod]
++		public float scale { get; set construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
++	[Version (since = "1.4")]
++	public class State : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public State ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint get_duration (string? source_state_name, string? target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned string get_state ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.List<weak string> get_states ();
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public void set_duration (string? source_state_name, string? target_state_name, uint duration);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.State set_key (string? source_state_name, string target_state_name, GLib.Object object, string property_name, uint mode, GLib.Value value, double pre_delay, double post_delay);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline set_state (string target_state_name);
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public unowned Clutter.Timeline warp_to_state (string target_state_name);
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public uint duration { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public string state { owned get; set; }
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public virtual signal void completed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_state_key_get_type ()")]
++	[Compact]
++	[Version (since = "1.4")]
++	public class StateKey {
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.4")]
++		public GLib.Type get_property_type ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")]
++	[Version (since = "1.8")]
++	public class SwipeAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public SwipeAction ();
++		[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
++		public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
++		[Version (since = "1.14")]
++		public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
++	[Version (since = "1.14")]
++	public class TapAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public TapAction ();
++		public virtual signal void tap (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_get_type ()")]
++	[Version (since = "1.0")]
++	public class Text : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text ();
++		[Version (since = "1.10")]
++		public int coords_to_position (float x, float y);
++		public void delete_chars (uint n_chars);
++		public bool delete_selection ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.full (string font_name, string text, Clutter.Color color);
++		public bool get_activatable ();
++		public unowned Pango.AttrList get_attributes ();
++		[Version (since = "1.10")]
++		public unowned Clutter.TextBuffer get_buffer ();
++		public string get_chars (ssize_t start_pos, ssize_t end_pos);
++		public Clutter.Color get_color ();
++		public Clutter.Color get_cursor_color ();
++		public int get_cursor_position ();
++		[Version (since = "1.16")]
++		public void get_cursor_rect (out unowned Graphene.Rect rect);
++		public uint get_cursor_size ();
++		public bool get_cursor_visible ();
++		public bool get_editable ();
++		public Pango.EllipsizeMode get_ellipsize ();
++		[Version (since = "1.2")]
++		public Pango.FontDescription get_font_description ();
++		public unowned string get_font_name ();
++		public Clutter.InputContentHintFlags get_input_hints ();
++		public Clutter.InputContentPurpose get_input_purpose ();
++		[Version (since = "0.6")]
++		public bool get_justify ();
++		public unowned Pango.Layout get_layout ();
++		[Version (since = "1.8")]
++		public void get_layout_offsets (out int x, out int y);
++		public Pango.Alignment get_line_alignment ();
++		public bool get_line_wrap ();
++		public Pango.WrapMode get_line_wrap_mode ();
++		public int get_max_length ();
++		public unichar get_password_char ();
++		public bool get_selectable ();
++		[Version (since = "1.8")]
++		public Clutter.Color get_selected_text_color ();
++		public string get_selection ();
++		public int get_selection_bound ();
++		public Clutter.Color get_selection_color ();
++		public bool get_single_line_mode ();
++		public unowned string get_text ();
++		public bool get_use_markup ();
++		public bool has_preedit ();
++		public void insert_text (string text, ssize_t position);
++		public void insert_unichar (unichar wc);
++		public bool position_to_coords (int position, out float x, out float y, out float line_height = null);
++		public void set_activatable (bool activatable);
++		public void set_attributes (Pango.AttrList? attrs);
++		[Version (since = "1.10")]
++		public void set_buffer (Clutter.TextBuffer buffer);
++		public void set_color (Clutter.Color color);
++		public void set_cursor_color (Clutter.Color? color);
++		public void set_cursor_position (int position);
++		public void set_cursor_size (int size);
++		public void set_cursor_visible (bool cursor_visible);
++		public void set_editable (bool editable);
++		public void set_ellipsize (Pango.EllipsizeMode mode);
++		[Version (since = "1.2")]
++		public void set_font_description (Pango.FontDescription font_desc);
++		public void set_font_name (string? font_name);
++		public void set_input_hints (Clutter.InputContentHintFlags hints);
++		public void set_input_purpose (Clutter.InputContentPurpose purpose);
++		public void set_justify (bool justify);
++		public void set_line_alignment (Pango.Alignment alignment);
++		public void set_line_wrap (bool line_wrap);
++		public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
++		public void set_markup (string? markup);
++		public void set_max_length (int max);
++		public void set_password_char (unichar wc);
++		[Version (since = "1.2")]
++		public void set_preedit_string (string? preedit_str, Pango.AttrList? preedit_attrs, uint cursor_pos);
++		public void set_selectable (bool selectable);
++		[Version (since = "1.8")]
++		public void set_selected_text_color (Clutter.Color? color);
++		public void set_selection (ssize_t start_pos, ssize_t end_pos);
++		public void set_selection_bound (int selection_bound);
++		public void set_selection_color (Clutter.Color? color);
++		public void set_single_line_mode (bool single_line);
++		public void set_text (string? text);
++		public void set_use_markup (bool setting);
++		[CCode (cname = "clutter_text_activate")]
++		public bool try_activate ();
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		[Version (since = "1.10")]
++		public Text.with_buffer (Clutter.TextBuffer buffer);
++		[CCode (has_construct_function = false, type = "ClutterActor*")]
++		public Text.with_text (string? font_name, string text);
++		public bool activatable { get; set; }
++		public Pango.AttrList attributes { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.TextBuffer buffer { get; set; }
++		public Clutter.Color color { get; set; }
++		public Clutter.Color cursor_color { get; set; }
++		[NoAccessorMethod]
++		public bool cursor_color_set { get; }
++		[Version (since = "1.12")]
++		public int cursor_position { get; set; }
++		public int cursor_size { get; set; }
++		public bool cursor_visible { get; set; }
++		public bool editable { get; set; }
++		public Pango.EllipsizeMode ellipsize { get; set; }
++		[Version (since = "1.2")]
++		public Pango.FontDescription font_description { owned get; set; }
++		public string font_name { get; set; }
++		public Clutter.InputContentHintFlags input_hints { get; set; }
++		public Clutter.InputContentPurpose input_purpose { get; set; }
++		public bool justify { get; set; }
++		public Pango.Alignment line_alignment { get; set; }
++		public bool line_wrap { get; set; }
++		public Pango.WrapMode line_wrap_mode { get; set; }
++		public int max_length { get; set; }
++		public uint password_char { get; set; }
++		[NoAccessorMethod]
++		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
++		public int position { get; set; }
++		public bool selectable { get; set; }
++		[Version (since = "1.8")]
++		public Clutter.Color selected_text_color { get; set; }
++		[NoAccessorMethod]
++		[Version (since = "1.8")]
++		public bool selected_text_color_set { get; }
++		public int selection_bound { get; set; }
++		public Clutter.Color selection_color { get; set; }
++		[NoAccessorMethod]
++		public bool selection_color_set { get; }
++		public bool single_line_mode { get; set; }
++		public string text { get; set; }
++		public bool use_markup { get; set; }
++		public virtual signal void activate ();
++		[Version (since = "1.16")]
++		public virtual signal void cursor_changed ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public virtual signal void cursor_event (Graphene.Rect rect);
++		[HasEmitter]
++		[Version (since = "1.2")]
++		public signal void delete_text (int start_pos, int end_pos);
++		public virtual signal void text_changed ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_buffer_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextBuffer : GLib.Object {
++		[CCode (has_construct_function = false)]
++		public TextBuffer ();
++		public virtual uint delete_text (uint position, uint n_chars);
++		public void emit_deleted_text (uint position, uint n_chars);
++		public void emit_inserted_text (uint position, string chars, uint n_chars);
++		public size_t get_bytes ();
++		public virtual uint get_length ();
++		public int get_max_length ();
++		public unowned string get_text ();
++		[CCode (vfunc_name = "get_text")]
++		[NoWrapper]
++		public virtual unowned string get_text_with_length (size_t n_bytes);
++		public virtual uint insert_text (uint position, string chars, uint n_chars);
++		public void set_max_length (int max_length);
++		public void set_text (string chars, int n_chars);
++		[CCode (has_construct_function = false)]
++		public TextBuffer.with_text (string? text, ssize_t text_len);
++		public uint length { get; }
++		public int max_length { get; set; }
++		public string text { get; }
++		public virtual signal void deleted_text (uint position, uint n_chars);
++		public virtual signal void inserted_text (uint position, string chars, uint n_chars);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_text_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextNode (Pango.Layout? layout, Clutter.Color? color);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_get_type ()")]
++	public class Texture : Clutter.Actor {
++		public Cogl.Material cogl_material { get; set; }
++		public Cogl.Texture cogl_texture { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")]
++	[Version (since = "1.10")]
++	public class TextureNode : Clutter.PipelineNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TextureNode (Cogl.Texture texture, Clutter.Color? color, Clutter.ScalingFilter min_filter, Clutter.ScalingFilter mag_filter);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_timeline_get_type ()")]
++	[Version (since = "0.2")]
++	public class Timeline : GLib.Object, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		[Version (since = "0.6")]
++		public Timeline (uint msecs);
++		[Version (since = "1.14")]
++		public void add_marker (string marker_name, double progress);
++		[Version (since = "0.8")]
++		public void add_marker_at_time (string marker_name, uint msecs);
++		public void advance (uint msecs);
++		[Version (since = "0.8")]
++		public void advance_to_marker (string marker_name);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public Clutter.Timeline clone ();
++		[Version (since = "1.6")]
++		public bool get_auto_reverse ();
++		[Version (since = "1.12")]
++		public bool get_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "1.10")]
++		public int get_current_repeat ();
++		[Version (since = "0.4")]
++		public uint get_delay ();
++		[Version (since = "0.6")]
++		public uint get_delta ();
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection get_direction ();
++		[Version (since = "0.6")]
++		public uint get_duration ();
++		[Version (since = "1.10")]
++		public int64 get_duration_hint ();
++		public uint get_elapsed_time ();
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool get_loop ();
++		[Version (since = "0.6")]
++		public double get_progress ();
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode get_progress_mode ();
++		[Version (since = "1.10")]
++		public int get_repeat_count ();
++		[Version (since = "1.12")]
++		public bool get_step_progress (out int n_steps, out Clutter.StepMode step_mode);
++		[Version (since = "0.8")]
++		public bool has_marker (string marker_name);
++		public bool is_playing ();
++		[CCode (array_length = true, array_length_pos = 1.1, array_length_type = "gsize", array_null_terminated = true)]
++		[Version (since = "0.8")]
++		public string[] list_markers (int msecs);
++		public void pause ();
++		[Version (since = "0.8")]
++		public void remove_marker (string marker_name);
++		public void rewind ();
++		[Version (since = "1.6")]
++		public void set_auto_reverse (bool reverse);
++		[Version (since = "1.12")]
++		public void set_cubic_bezier_progress (Graphene.Point c_1, Graphene.Point c_2);
++		[Version (since = "0.4")]
++		public void set_delay (uint msecs);
++		[Version (since = "0.6")]
++		public void set_direction (Clutter.TimelineDirection direction);
++		[Version (since = "0.6")]
++		public void set_duration (uint msecs);
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public void set_loop (bool loop);
++		[Version (since = "1.10")]
++		public void set_progress_func (owned Clutter.TimelineProgressFunc? func);
++		[Version (since = "1.10")]
++		public void set_progress_mode (Clutter.AnimationMode mode);
++		[Version (since = "1.10")]
++		public void set_repeat_count (int count);
++		[Version (since = "1.12")]
++		public void set_step_progress (int n_steps, Clutter.StepMode step_mode);
++		public void skip (uint msecs);
++		public void start ();
++		public void stop ();
++		[Version (since = "1.6")]
++		public bool auto_reverse { get; set; }
++		[Version (since = "0.4")]
++		public uint delay { get; set; }
++		[Version (since = "0.6")]
++		public Clutter.TimelineDirection direction { get; set; }
++		[Version (since = "0.6")]
++		public uint duration { get; set; }
++		[Version (deprecated = true, deprecated_since = "1.10")]
++		public bool loop { get; set; }
++		[Version (since = "1.10")]
++		public Clutter.AnimationMode progress_mode { get; set; }
++		[Version (since = "1.10")]
++		public int repeat_count { get; set; }
++		public virtual signal void completed ();
++		[Version (since = "0.8")]
++		public virtual signal void marker_reached (string marker_name, int msecs);
++		public virtual signal void new_frame (int msecs);
++		public virtual signal void paused ();
++		public virtual signal void started ();
++		[Version (since = "1.12")]
++		public virtual signal void stopped (bool is_finished);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Compact]
++	public class TimeoutPool {
++		[CCode (has_construct_function = false)]
++		public TimeoutPool (int priority);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.10")]
++	public class TouchEvent : Clutter.Event {
++		public double axes;
++		public weak Clutter.InputDevice device;
++		public Clutter.EventFlags flags;
++		public Clutter.ModifierType modifier_state;
++		public weak Clutter.EventSequence sequence;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadPinchEvent : Clutter.Event {
++		public float angle_delta;
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public float scale;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Compact]
++	[Version (since = "1.24")]
++	public class TouchpadSwipeEvent : Clutter.Event {
++		public float dx;
++		public float dy;
++		public Clutter.EventFlags flags;
++		public uint n_fingers;
++		public Clutter.TouchpadGesturePhase phase;
++		public weak Clutter.Actor source;
++		public weak Clutter.Stage stage;
++		public uint32 time;
++		public Clutter.EventType type;
++		public float x;
++		public float y;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")]
++	public class TransformNode : Clutter.PaintNode {
++		[CCode (has_construct_function = false, type = "ClutterPaintNode*")]
++		public TransformNode (Cogl.Matrix projection);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_get_type ()")]
++	[Version (since = "1.10")]
++	public abstract class Transition : Clutter.Timeline, Clutter.Scriptable {
++		[CCode (has_construct_function = false)]
++		protected Transition ();
++		[NoWrapper]
++		public virtual void attached (Clutter.Animatable animatable);
++		[NoWrapper]
++		public virtual void compute_value (Clutter.Animatable animatable, Clutter.Interval interval, double progress);
++		[NoWrapper]
++		public virtual void detached (Clutter.Animatable animatable);
++		public unowned Clutter.Animatable get_animatable ();
++		public unowned Clutter.Interval get_interval ();
++		public bool get_remove_on_complete ();
++		public void set_animatable (Clutter.Animatable? animatable);
++		[Version (since = "1.12")]
++		public void set_from_value (GLib.Value value);
++		public void set_interval (Clutter.Interval? interval);
++		public void set_remove_on_complete (bool remove_complete);
++		[Version (since = "1.12")]
++		public void set_to_value (GLib.Value value);
++		public Clutter.Animatable animatable { get; set; }
++		public Clutter.Interval interval { get; set; }
++		public bool remove_on_complete { get; set; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transition_group_get_type ()")]
++	[Version (since = "1.12")]
++	public class TransitionGroup : Clutter.Transition, Clutter.Scriptable {
++		[CCode (has_construct_function = false, type = "ClutterTransition*")]
++		public TransitionGroup ();
++		public void add_transition (Clutter.Transition transition);
++		public void remove_all ();
++		public void remove_transition (Clutter.Transition transition);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_virtual_input_device_get_type ()")]
++	public class VirtualInputDevice : GLib.Object {
++		[CCode (has_construct_function = false)]
++		protected VirtualInputDevice ();
++		public int get_device_type ();
++		public virtual void notify_absolute_motion (uint64 time_us, double x, double y);
++		public virtual void notify_button (uint64 time_us, uint32 button, Clutter.ButtonState button_state);
++		public virtual void notify_discrete_scroll (uint64 time_us, Clutter.ScrollDirection direction, Clutter.ScrollSource scroll_source);
++		public virtual void notify_key (uint64 time_us, uint32 key, Clutter.KeyState key_state);
++		public virtual void notify_keyval (uint64 time_us, uint32 keyval, Clutter.KeyState key_state);
++		public virtual void notify_relative_motion (uint64 time_us, double dx, double dy);
++		public virtual void notify_scroll_continuous (uint64 time_us, double dx, double dy, Clutter.ScrollSource scroll_source, Clutter.ScrollFinishFlags finish_flags);
++		public virtual void notify_touch_down (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_motion (uint64 time_us, int slot, double x, double y);
++		public virtual void notify_touch_up (uint64 time_us, int slot);
++		public Clutter.InputDeviceType device_type { get; construct; }
++		[NoAccessorMethod]
++		public Clutter.Seat seat { owned get; construct; }
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")]
++	[Version (since = "1.12")]
++	public class ZoomAction : Clutter.GestureAction {
++		[CCode (has_construct_function = false, type = "ClutterAction*")]
++		public ZoomAction ();
++		public void get_focal_point (Graphene.Point point);
++		public void get_transformed_focal_point (Graphene.Point point);
++		public Clutter.ZoomAxis get_zoom_axis ();
++		public void set_zoom_axis (Clutter.ZoomAxis axis);
++		public Clutter.ZoomAxis zoom_axis { get; set; }
++		public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
++	public interface Animatable : GLib.Object {
++		[NoWrapper]
++		public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract unowned GLib.ParamSpec find_property (string property_name);
++		[Version (since = "1.4")]
++		public abstract void get_initial_state (string property_name, GLib.Value value);
++		[Version (since = "1.8")]
++		public abstract bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out GLib.Value value);
++		[Version (since = "1.4")]
++		public abstract void set_final_state (string property_name, GLib.Value value);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_container_get_type ()")]
++	[Version (since = "0.4")]
++	public interface Container : GLib.Object {
++		public void add (params Clutter.Actor[] actors);
++		[CCode (vfunc_name = "add")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void add_actor (Clutter.Actor actor);
++		[Version (since = "0.8")]
++		public void child_get (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_get_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public void child_set (Clutter.Actor actor, ...);
++		[Version (since = "0.8")]
++		public void child_set_property (Clutter.Actor child, string property, GLib.Value value);
++		[Version (since = "0.8")]
++		public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass klass, string property_name);
++		[CCode (array_length_pos = 1.1, array_length_type = "guint")]
++		[Version (since = "0.8")]
++		public static GLib.ParamSpec[] class_list_child_properties (GLib.ObjectClass klass);
++		[Version (since = "1.2")]
++		public virtual void create_child_meta (Clutter.Actor actor);
++		[Version (since = "1.2")]
++		public virtual void destroy_child_meta (Clutter.Actor actor);
++		[Version (since = "0.6")]
++		public unowned Clutter.Actor find_child_by_name (string child_name);
++		[CCode (cname = "clutter_container_class_find_child_property")]
++		public class unowned GLib.ParamSpec find_child_property (string property_name);
++		[Version (since = "0.8")]
++		public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public GLib.List<weak Clutter.Actor> get_children ();
++		[CCode (cname = "clutter_container_class_list_child_properties")]
++		public class unowned GLib.ParamSpec[] list_child_properties ();
++		[CCode (vfunc_name = "lower")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[CCode (vfunc_name = "raise")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public void remove (...);
++		[CCode (vfunc_name = "remove")]
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++		public abstract void remove_actor (Clutter.Actor actor);
++		[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
++		public abstract void sort_depth_order ();
++		public virtual signal void actor_added (Clutter.Actor actor);
++		public virtual signal void actor_removed (Clutter.Actor actor);
++		[HasEmitter]
++		[Version (since = "0.8")]
++		public virtual signal void child_notify (Clutter.Actor child, GLib.ParamSpec pspec);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterContentInterface", type_id = "clutter_content_get_type ()")]
++	public interface Content : GLib.Object {
++		[Version (since = "1.10")]
++		public abstract bool get_preferred_size (out float width, out float height);
++		[Version (since = "1.10")]
++		public abstract void invalidate ();
++		public abstract void invalidate_size ();
++		[NoWrapper]
++		public abstract void paint_content (Clutter.Actor actor, Clutter.PaintNode node, Clutter.PaintContext paint_context);
++		[Version (since = "1.10")]
++		public virtual signal void attached (Clutter.Actor actor);
++		[Version (since = "1.10")]
++		public virtual signal void detached (Clutter.Actor actor);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_scriptable_get_type ()")]
++	[Version (since = "0.6")]
++	public interface Scriptable : GLib.Object {
++		public abstract unowned string get_id ();
++		public abstract bool parse_custom_node (Clutter.Script script, GLib.Value value, string name, Json.Node node);
++		public abstract void set_custom_property (Clutter.Script script, string name, GLib.Value value);
++		public abstract void set_id (string id_);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public interface StageWindow : GLib.Object {
++		[NoWrapper]
++		public abstract int get_pending_swaps ();
++		[NoWrapper]
++		public abstract unowned Clutter.Actor get_wrapper ();
++		[NoWrapper]
++		public abstract bool has_redraw_clips ();
++		[NoWrapper]
++		public abstract void hide ();
++		[NoWrapper]
++		public abstract bool ignoring_redraw_clips ();
++		[NoWrapper]
++		public abstract bool realize ();
++		[NoWrapper]
++		public abstract void resize (int width, int height);
++		[NoWrapper]
++		public abstract void set_cursor_visible (bool cursor_visible);
++		[NoWrapper]
++		public abstract void set_fullscreen (bool is_fullscreen);
++		[NoWrapper]
++		public abstract void set_title (string title);
++		[NoWrapper]
++		public abstract void set_user_resizable (bool is_resizable);
++		[NoWrapper]
++		public abstract void show (bool do_raise);
++		[NoWrapper]
++		public abstract void unrealize ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_actor_box_get_type ()")]
++	public struct ActorBox {
++		public float x1;
++		public float y1;
++		public float x2;
++		public float y2;
++		[Version (since = "1.12")]
++		public static Clutter.ActorBox? alloc ();
++		[Version (since = "1.2")]
++		public static void clamp_to_pixel (ref Clutter.ActorBox box);
++		[Version (since = "1.0")]
++		public bool contains (float x, float y);
++		[Version (since = "1.0")]
++		public Clutter.ActorBox? copy ();
++		[Version (since = "1.0")]
++		public bool equal (Clutter.ActorBox box_b);
++		[Version (since = "1.0")]
++		public void free ();
++		[Version (since = "1.0")]
++		public float get_area ();
++		[Version (since = "1.0")]
++		public float get_height ();
++		[Version (since = "1.0")]
++		public void get_origin (out float x, out float y);
++		[Version (since = "1.0")]
++		public void get_size (out float width, out float height);
++		[Version (since = "1.0")]
++		public float get_width ();
++		[Version (since = "1.0")]
++		public float get_x ();
++		[Version (since = "1.0")]
++		public float get_y ();
++		[Version (since = "1.10")]
++		public unowned Clutter.ActorBox? init (float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void init_rect (float x, float y, float width, float height);
++		[Version (since = "1.2")]
++		public Clutter.ActorBox interpolate (Clutter.ActorBox final, double progress);
++		[Version (since = "1.6")]
++		public void scale (float scale);
++		[Version (since = "1.6")]
++		public void set_origin (float x, float y);
++		[Version (since = "1.6")]
++		public void set_size (float width, float height);
++		[Version (since = "1.4")]
++		public Clutter.ActorBox union (Clutter.ActorBox b);
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.10")]
++	public struct ActorIter {
++		public void destroy ();
++		public void init (Clutter.Actor root);
++		[Version (since = "1.12")]
++		public bool is_valid ();
++		public bool next (out unowned Clutter.Actor child);
++		public bool prev (out unowned Clutter.Actor child);
++		public void remove ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct Capture {
++		public weak Cairo.Surface image;
++		public Cairo.RectangleInt rect;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_COLOR")]
++	public struct Color {
++		public uint8 red;
++		public uint8 green;
++		public uint8 blue;
++		public uint8 alpha;
++		public Clutter.Color add (Clutter.Color b);
++		[Version (since = "1.12")]
++		public static Clutter.Color? alloc ();
++		[Version (since = "0.2")]
++		public Clutter.Color? copy ();
++		public Clutter.Color darken ();
++		[Version (since = "0.2")]
++		public bool equal (Clutter.Color v2);
++		[Version (since = "0.2")]
++		public void free ();
++		[CCode (cname = "clutter_color_from_hls")]
++		public Color.from_hls (float hue, float luminance, float saturation);
++		[CCode (cname = "clutter_color_from_pixel")]
++		public Color.from_pixel (uint32 pixel);
++		[CCode (cname = "clutter_color_from_string")]
++		public Color.from_string (string str);
++		public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
++		[Version (since = "1.0")]
++		public uint hash ();
++		[Version (since = "1.12")]
++		public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "1.6")]
++		public Clutter.Color interpolate (Clutter.Color final, double progress);
++		public Clutter.Color lighten ();
++		[CCode (cname = "clutter_color_from_string")]
++		public bool parse_string (string str);
++		public Clutter.Color shade (double factor);
++		public Clutter.Color subtract (Clutter.Color b);
++		public void to_hls (out float hue, out float luminance, out float saturation);
++		public uint32 to_pixel ();
++		[Version (since = "0.2")]
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct KbdA11ySettings {
++		public Clutter.KeyboardA11yFlags controls;
++		public int slowkeys_delay;
++		public int debounce_delay;
++		public int timeout_delay;
++		public int mousekeys_init_delay;
++		public int mousekeys_max_speed;
++		public int mousekeys_accel_time;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_knot_get_type ()")]
++	[Version (since = "0.2")]
++	public struct Knot {
++		public int x;
++		public int y;
++		public Clutter.Knot? copy ();
++		public bool equal (Clutter.Knot knot_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public struct Matrix : Cogl.Matrix {
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadButtonEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public uint32 button;
++		public uint32 group;
++		public weak Clutter.InputDevice device;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadRingEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource ring_source;
++		public uint32 ring_number;
++		public uint32 group;
++		public double angle;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PadStripEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++		public Clutter.InputDevicePadSource strip_source;
++		public uint32 strip_number;
++		public uint32 group;
++		public double value;
++		public uint32 mode;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_path_node_get_type ()")]
++	[Version (since = "1.0")]
++	public struct PathNode {
++		public Clutter.PathNodeType type;
++		[CCode (array_length = false)]
++		public weak Clutter.Knot points[3];
++		public Clutter.PathNode? copy ();
++		public bool equal (Clutter.PathNode node_b);
++		public void free ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_perspective_get_type ()")]
++	[Version (since = "0.4")]
++	public struct Perspective {
++		public float fovy;
++		public float aspect;
++		public float z_near;
++		public float z_far;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	public struct PointerA11ySettings {
++		public Clutter.PointerA11yFlags controls;
++		public Clutter.PointerA11yDwellClickType dwell_click_type;
++		public Clutter.PointerA11yDwellMode dwell_mode;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_single;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_double;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_drag;
++		public Clutter.PointerA11yDwellDirection dwell_gesture_secondary;
++		public int secondary_click_delay;
++		public int dwell_delay;
++		public int dwell_threshold;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
++	[Version (since = "1.28")]
++	public struct ProximityEvent {
++		public Clutter.EventType type;
++		public uint32 time;
++		public Clutter.EventFlags flags;
++		public weak Clutter.Stage stage;
++		public weak Clutter.Actor source;
++		public weak Clutter.InputDevice device;
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "CLUTTER_TYPE_UNITS")]
++	[Version (since = "1.0")]
++	public struct Units {
++		public Clutter.Units? copy ();
++		public void free ();
++		[CCode (cname = "clutter_units_from_cm")]
++		public Units.from_cm (float cm);
++		[CCode (cname = "clutter_units_from_em")]
++		public Units.from_em (float em);
++		[CCode (cname = "clutter_units_from_em_for_font")]
++		public Units.from_em_for_font (string font_name, float em);
++		[CCode (cname = "clutter_units_from_mm")]
++		public Units.from_mm (float mm);
++		[CCode (cname = "clutter_units_from_pixels")]
++		public Units.from_pixels (int px);
++		[CCode (cname = "clutter_units_from_pt")]
++		public Units.from_pt (float pt);
++		[CCode (cname = "clutter_units_from_string")]
++		public Units.from_string (string str);
++		public Clutter.UnitType get_unit_type ();
++		public float get_unit_value ();
++		public float to_pixels ();
++		public string to_string ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_ALIGN_", type_id = "clutter_actor_align_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ActorAlign {
++		FILL,
++		START,
++		CENTER,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ACTOR_", type_id = "clutter_actor_flags_get_type ()")]
++	[Flags]
++	public enum ActorFlags {
++		MAPPED,
++		REALIZED,
++		REACTIVE,
++		VISIBLE,
++		NO_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ALIGN_", type_id = "clutter_align_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum AlignAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum AllocationFlags {
++		ALLOCATION_NONE,
++		ABSOLUTE_ORIGIN_CHANGED,
++		DELEGATE_LAYOUT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum AnimationMode {
++		CUSTOM_MODE,
++		LINEAR,
++		EASE_IN_QUAD,
++		EASE_OUT_QUAD,
++		EASE_IN_OUT_QUAD,
++		EASE_IN_CUBIC,
++		EASE_OUT_CUBIC,
++		EASE_IN_OUT_CUBIC,
++		EASE_IN_QUART,
++		EASE_OUT_QUART,
++		EASE_IN_OUT_QUART,
++		EASE_IN_QUINT,
++		EASE_OUT_QUINT,
++		EASE_IN_OUT_QUINT,
++		EASE_IN_SINE,
++		EASE_OUT_SINE,
++		EASE_IN_OUT_SINE,
++		EASE_IN_EXPO,
++		EASE_OUT_EXPO,
++		EASE_IN_OUT_EXPO,
++		EASE_IN_CIRC,
++		EASE_OUT_CIRC,
++		EASE_IN_OUT_CIRC,
++		EASE_IN_ELASTIC,
++		EASE_OUT_ELASTIC,
++		EASE_IN_OUT_ELASTIC,
++		EASE_IN_BACK,
++		EASE_OUT_BACK,
++		EASE_IN_OUT_BACK,
++		EASE_IN_BOUNCE,
++		EASE_OUT_BOUNCE,
++		EASE_IN_OUT_BOUNCE,
++		STEPS,
++		STEP_START,
++		STEP_END,
++		CUBIC_BEZIER,
++		EASE,
++		EASE_IN,
++		EASE_OUT,
++		EASE_IN_OUT,
++		ANIMATION_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIN_ALIGNMENT_", type_id = "clutter_bin_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BinAlignment {
++		[Version (deprecated = true)]
++		FIXED,
++		[Version (deprecated = true)]
++		FILL,
++		START,
++		[Version (deprecated = true)]
++		END,
++		[Version (deprecated = true)]
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BIND_", type_id = "clutter_bind_coordinate_get_type ()")]
++	[Version (since = "1.4")]
++	public enum BindCoordinate {
++		X,
++		Y,
++		WIDTH,
++		HEIGHT,
++		POSITION,
++		SIZE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BOX_ALIGNMENT_", type_id = "clutter_box_alignment_get_type ()")]
++	[Version (since = "1.2")]
++	public enum BoxAlignment {
++		START,
++		END,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_BUTTON_STATE_", type_id = "clutter_button_state_get_type ()")]
++	public enum ButtonState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_CONTENT_GRAVITY_", type_id = "clutter_content_gravity_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ContentGravity {
++		TOP_LEFT,
++		TOP,
++		TOP_RIGHT,
++		LEFT,
++		CENTER,
++		RIGHT,
++		BOTTOM_LEFT,
++		BOTTOM,
++		BOTTOM_RIGHT,
++		RESIZE_FILL,
++		RESIZE_ASPECT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPEAT_", type_id = "clutter_content_repeat_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ContentRepeat {
++		NONE,
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_debug_flag_get_type ()")]
++	[Flags]
++	public enum DebugFlag {
++		MISC,
++		ACTOR,
++		TEXTURE,
++		EVENT,
++		PAINT,
++		PANGO,
++		BACKEND,
++		SCHEDULER,
++		SCRIPT,
++		SHADER,
++		MULTISTAGE,
++		ANIMATION,
++		LAYOUT,
++		PICK,
++		EVENTLOOP,
++		CLIPPING,
++		OOB_TRANSFORMS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")]
++	[Version (since = "1.4")]
++	public enum DragAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_", type_id = "clutter_draw_debug_flag_get_type ()")]
++	[Flags]
++	public enum DrawDebugFlag {
++		DISABLE_SWAP_EVENTS,
++		DISABLE_CLIPPED_REDRAWS,
++		REDRAWS,
++		PAINT_VOLUMES,
++		DISABLE_CULLING,
++		DISABLE_OFFSCREEN_REDIRECT,
++		CONTINUOUS_REDRAW,
++		PAINT_DEFORM_TILES,
++		PAINT_DAMAGE_REGION
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_ACTOR_", type_id = "clutter_effect_paint_flags_get_type ()")]
++	[Flags]
++	public enum EffectPaintFlags {
++		[CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")]
++		ACTOR_DIRTY
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.6")]
++	public enum EventFlags {
++		NONE,
++		FLAG_SYNTHETIC,
++		FLAG_INPUT_METHOD,
++		FLAG_REPEATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
++	[Version (since = "0.4")]
++	public enum EventType {
++		NOTHING,
++		KEY_PRESS,
++		KEY_RELEASE,
++		MOTION,
++		ENTER,
++		LEAVE,
++		BUTTON_PRESS,
++		BUTTON_RELEASE,
++		SCROLL,
++		STAGE_STATE,
++		DESTROY_NOTIFY,
++		CLIENT_MESSAGE,
++		DELETE,
++		TOUCH_BEGIN,
++		TOUCH_UPDATE,
++		TOUCH_END,
++		TOUCH_CANCEL,
++		TOUCHPAD_PINCH,
++		TOUCHPAD_SWIPE,
++		PROXIMITY_IN,
++		PROXIMITY_OUT,
++		PAD_BUTTON_PRESS,
++		PAD_BUTTON_RELEASE,
++		PAD_STRIP,
++		PAD_RING,
++		EVENT_LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FEATURE_", type_id = "clutter_feature_flags_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum FeatureFlags {
++		TEXTURE_NPOT,
++		SWAP_THROTTLE,
++		STAGE_STATIC,
++		STAGE_CURSOR,
++		SHADERS_GLSL,
++		OFFSCREEN,
++		STAGE_MULTIPLE,
++		SWAP_EVENTS;
++		[CCode (cname = "clutter_feature_available")]
++		public bool is_available ();
++		[CCode (cname = "clutter_feature_get_all")]
++		public static Clutter.FeatureFlags @get ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
++	[Version (since = "1.2")]
++	public enum FlowOrientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GESTURE_TRIGGER_EDGE_", type_id = "clutter_gesture_trigger_edge_get_type ()")]
++	[Version (since = "1.18")]
++	public enum GestureTriggerEdge {
++		NONE,
++		AFTER,
++		BEFORE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.2")]
++	public enum Gravity {
++		NONE,
++		NORTH,
++		NORTH_EAST,
++		EAST,
++		SOUTH_EAST,
++		SOUTH,
++		SOUTH_WEST,
++		WEST,
++		NORTH_WEST,
++		CENTER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")]
++	[Version (since = "1.12")]
++	public enum GridPosition {
++		LEFT,
++		RIGHT,
++		TOP,
++		BOTTOM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
++	[Version (since = "0.2")]
++	public enum InitError {
++		SUCCESS,
++		ERROR_UNKNOWN,
++		ERROR_THREADS,
++		ERROR_BACKEND,
++		ERROR_INTERNAL;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputAxis {
++		IGNORE,
++		X,
++		Y,
++		PRESSURE,
++		XTILT,
++		YTILT,
++		WHEEL,
++		DISTANCE,
++		ROTATION,
++		SLIDER,
++		LAST
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_HINT_", type_id = "clutter_input_content_hint_flags_get_type ()")]
++	[Flags]
++	public enum InputContentHintFlags {
++		COMPLETION,
++		SPELLCHECK,
++		AUTO_CAPITALIZATION,
++		LOWERCASE,
++		UPPERCASE,
++		TITLECASE,
++		HIDDEN_TEXT,
++		SENSITIVE_DATA,
++		LATIN,
++		MULTILINE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_CONTENT_PURPOSE_", type_id = "clutter_input_content_purpose_get_type ()")]
++	public enum InputContentPurpose {
++		NORMAL,
++		ALPHA,
++		DIGITS,
++		NUMBER,
++		PHONE,
++		URL,
++		EMAIL,
++		NAME,
++		PASSWORD,
++		DATE,
++		TIME,
++		DATETIME,
++		TERMINAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_MAPPING_", type_id = "clutter_input_device_mapping_get_type ()")]
++	public enum InputDeviceMapping {
++		ABSOLUTE,
++		RELATIVE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_PAD_SOURCE_", type_id = "clutter_input_device_pad_source_get_type ()")]
++	public enum InputDevicePadSource {
++		UNKNOWN,
++		FINGER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_DEVICE_TOOL_", type_id = "clutter_input_device_tool_type_get_type ()")]
++	[Version (since = "1.28")]
++	public enum InputDeviceToolType {
++		NONE,
++		PEN,
++		ERASER,
++		BRUSH,
++		PENCIL,
++		AIRBRUSH,
++		MOUSE,
++		LENS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_input_device_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum InputDeviceType {
++		POINTER_DEVICE,
++		KEYBOARD_DEVICE,
++		EXTENSION_DEVICE,
++		JOYSTICK_DEVICE,
++		TABLET_DEVICE,
++		TOUCHPAD_DEVICE,
++		TOUCHSCREEN_DEVICE,
++		PEN_DEVICE,
++		ERASER_DEVICE,
++		CURSOR_DEVICE,
++		PAD_DEVICE,
++		N_DEVICE_TYPES
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_MODE_", type_id = "clutter_input_mode_get_type ()")]
++	[Version (since = "1.6")]
++	public enum InputMode {
++		MASTER,
++		SLAVE,
++		FLOATING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_PANEL_STATE_", type_id = "clutter_input_panel_state_get_type ()")]
++	public enum InputPanelState {
++		OFF,
++		ON,
++		TOGGLE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "1.2")]
++	public enum Interpolation {
++		LINEAR,
++		CUBIC
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")]
++	public enum KeyState {
++		RELEASED,
++		PRESSED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_keyboard_a11y_flags_get_type ()")]
++	[Flags]
++	public enum KeyboardA11yFlags {
++		KEYBOARD_ENABLED,
++		TIMEOUT_ENABLED,
++		MOUSE_KEYS_ENABLED,
++		SLOW_KEYS_ENABLED,
++		SLOW_KEYS_BEEP_PRESS,
++		SLOW_KEYS_BEEP_ACCEPT,
++		SLOW_KEYS_BEEP_REJECT,
++		BOUNCE_KEYS_ENABLED,
++		BOUNCE_KEYS_BEEP_REJECT,
++		TOGGLE_KEYS_ENABLED,
++		STICKY_KEYS_ENABLED,
++		STICKY_KEYS_TWO_KEY_OFF,
++		STICKY_KEYS_BEEP,
++		FEATURE_STATE_CHANGE_BEEP
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_LONG_PRESS_", type_id = "clutter_long_press_state_get_type ()")]
++	[Version (since = "1.8")]
++	public enum LongPressState {
++		QUERY,
++		ACTIVATE,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_modifier_type_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum ModifierType {
++		SHIFT_MASK,
++		LOCK_MASK,
++		CONTROL_MASK,
++		MOD1_MASK,
++		MOD2_MASK,
++		MOD3_MASK,
++		MOD4_MASK,
++		MOD5_MASK,
++		BUTTON1_MASK,
++		BUTTON2_MASK,
++		BUTTON3_MASK,
++		BUTTON4_MASK,
++		BUTTON5_MASK,
++		MODIFIER_RESERVED_13_MASK,
++		MODIFIER_RESERVED_14_MASK,
++		MODIFIER_RESERVED_15_MASK,
++		MODIFIER_RESERVED_16_MASK,
++		MODIFIER_RESERVED_17_MASK,
++		MODIFIER_RESERVED_18_MASK,
++		MODIFIER_RESERVED_19_MASK,
++		MODIFIER_RESERVED_20_MASK,
++		MODIFIER_RESERVED_21_MASK,
++		MODIFIER_RESERVED_22_MASK,
++		MODIFIER_RESERVED_23_MASK,
++		MODIFIER_RESERVED_24_MASK,
++		MODIFIER_RESERVED_25_MASK,
++		SUPER_MASK,
++		HYPER_MASK,
++		META_MASK,
++		MODIFIER_RESERVED_29_MASK,
++		RELEASE_MASK,
++		MODIFIER_MASK
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_OFFSCREEN_REDIRECT_", type_id = "clutter_offscreen_redirect_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum OffscreenRedirect {
++		AUTOMATIC_FOR_OPACITY,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")]
++	[Version (since = "1.12")]
++	public enum Orientation {
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum PanAxis {
++		AXIS_NONE,
++		X_AXIS,
++		Y_AXIS,
++		AXIS_AUTO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PATH_", type_id = "clutter_path_node_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PathNodeType {
++		MOVE_TO,
++		LINE_TO,
++		CURVE_TO,
++		CLOSE,
++		REL_MOVE_TO,
++		REL_LINE_TO,
++		REL_CURVE_TO
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DEBUG_NOP_", type_id = "clutter_pick_debug_flag_get_type ()")]
++	[Flags]
++	public enum PickDebugFlag {
++		PICKING
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PICK_", type_id = "clutter_pick_mode_get_type ()")]
++	[Version (since = "1.0")]
++	public enum PickMode {
++		NONE,
++		REACTIVE,
++		ALL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_CLICK_TYPE_", type_id = "clutter_pointer_a11y_dwell_click_type_get_type ()")]
++	public enum PointerA11yDwellClickType {
++		NONE,
++		PRIMARY,
++		SECONDARY,
++		MIDDLE,
++		DOUBLE,
++		DRAG
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_DIRECTION_", type_id = "clutter_pointer_a11y_dwell_direction_get_type ()")]
++	public enum PointerA11yDwellDirection {
++		NONE,
++		LEFT,
++		RIGHT,
++		UP,
++		DOWN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_DWELL_MODE_", type_id = "clutter_pointer_a11y_dwell_mode_get_type ()")]
++	public enum PointerA11yDwellMode {
++		WINDOW,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_", type_id = "clutter_pointer_a11y_flags_get_type ()")]
++	[Flags]
++	public enum PointerA11yFlags {
++		SECONDARY_CLICK_ENABLED,
++		DWELL_ENABLED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_A11Y_TIMEOUT_TYPE_", type_id = "clutter_pointer_a11y_timeout_type_get_type ()")]
++	public enum PointerA11yTimeoutType {
++		SECONDARY_CLICK,
++		DWELL,
++		GESTURE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.10")]
++	public enum RepaintFlags {
++		PRE_PAINT,
++		POST_PAINT,
++		QUEUE_REDRAW_ON_ADD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REQUEST_", type_id = "clutter_request_mode_get_type ()")]
++	[Version (since = "0.8")]
++	public enum RequestMode {
++		HEIGHT_FOR_WIDTH,
++		WIDTH_FOR_HEIGHT,
++		CONTENT_SIZE
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_rotate_axis_get_type ()")]
++	[Version (since = "0.4")]
++	public enum RotateAxis {
++		X_AXIS,
++		Y_AXIS,
++		Z_AXIS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum RotateDirection {
++		CW,
++		CCW
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")]
++	[Version (since = "1.10")]
++	public enum ScalingFilter {
++		LINEAR,
++		NEAREST,
++		TRILINEAR
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_direction_get_type ()")]
++	[Version (since = "0.4")]
++	public enum ScrollDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT,
++		SMOOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_FINISHED_", type_id = "clutter_scroll_finish_flags_get_type ()")]
++	[Flags]
++	[Version (since = "1.26")]
++	public enum ScrollFinishFlags {
++		NONE,
++		HORIZONTAL,
++		VERTICAL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_", type_id = "clutter_scroll_mode_get_type ()")]
++	[Flags]
++	[Version (since = "1.12")]
++	public enum ScrollMode {
++		NONE,
++		HORIZONTALLY,
++		VERTICALLY,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCROLL_SOURCE_", type_id = "clutter_scroll_source_get_type ()")]
++	[Version (since = "1.26")]
++	public enum ScrollSource {
++		UNKNOWN,
++		WHEEL,
++		FINGER,
++		CONTINUOUS
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_shader_type_get_type ()")]
++	[Version (since = "1.4")]
++	public enum ShaderType {
++		VERTEX_SHADER,
++		FRAGMENT_SHADER
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SNAP_EDGE_", type_id = "clutter_snap_edge_get_type ()")]
++	[Version (since = "1.6")]
++	public enum SnapEdge {
++		TOP,
++		RIGHT,
++		BOTTOM,
++		LEFT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STAGE_STATE_", type_id = "clutter_stage_state_get_type ()")]
++	[Flags]
++	[Version (since = "0.4")]
++	public enum StageState {
++		ACTIVATED
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_COLOR_", type_id = "clutter_static_color_get_type ()")]
++	[Version (since = "1.6")]
++	public enum StaticColor {
++		WHITE,
++		BLACK,
++		RED,
++		DARK_RED,
++		GREEN,
++		DARK_GREEN,
++		BLUE,
++		DARK_BLUE,
++		CYAN,
++		DARK_CYAN,
++		MAGENTA,
++		DARK_MAGENTA,
++		YELLOW,
++		DARK_YELLOW,
++		GRAY,
++		DARK_GRAY,
++		LIGHT_GRAY,
++		BUTTER,
++		BUTTER_LIGHT,
++		BUTTER_DARK,
++		ORANGE,
++		ORANGE_LIGHT,
++		ORANGE_DARK,
++		CHOCOLATE,
++		CHOCOLATE_LIGHT,
++		CHOCOLATE_DARK,
++		CHAMELEON,
++		CHAMELEON_LIGHT,
++		CHAMELEON_DARK,
++		SKY_BLUE,
++		SKY_BLUE_LIGHT,
++		SKY_BLUE_DARK,
++		PLUM,
++		PLUM_LIGHT,
++		PLUM_DARK,
++		SCARLET_RED,
++		SCARLET_RED_LIGHT,
++		SCARLET_RED_DARK,
++		ALUMINIUM_1,
++		ALUMINIUM_2,
++		ALUMINIUM_3,
++		ALUMINIUM_4,
++		ALUMINIUM_5,
++		ALUMINIUM_6,
++		TRANSPARENT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_STEP_MODE_", type_id = "clutter_step_mode_get_type ()")]
++	[Version (since = "1.12")]
++	public enum StepMode {
++		START,
++		END
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SWIPE_DIRECTION_", type_id = "clutter_swipe_direction_get_type ()")]
++	[Flags]
++	[Version (since = "1.8")]
++	public enum SwipeDirection {
++		UP,
++		DOWN,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXT_DIRECTION_", type_id = "clutter_text_direction_get_type ()")]
++	[Version (since = "1.2")]
++	public enum TextDirection {
++		DEFAULT,
++		LTR,
++		RTL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")]
++	[Flags]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.4")]
++	public enum TextureFlags {
++		NONE,
++		RGB_FLAG_BGR,
++		RGB_FLAG_PREMULT,
++		YUV_FLAG_YUV2
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_QUALITY_", type_id = "clutter_texture_quality_get_type ()")]
++	[Version (deprecated = true, deprecated_since = "1.22", since = "0.8")]
++	public enum TextureQuality {
++		LOW,
++		MEDIUM,
++		HIGH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")]
++	[Version (since = "0.6")]
++	public enum TimelineDirection {
++		FORWARD,
++		BACKWARD
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TOUCHPAD_GESTURE_PHASE_", type_id = "clutter_touchpad_gesture_phase_get_type ()")]
++	[Version (since = "1.24")]
++	public enum TouchpadGesturePhase {
++		BEGIN,
++		UPDATE,
++		END,
++		CANCEL
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_UNIT_", type_id = "clutter_unit_type_get_type ()")]
++	[Version (since = "1.0")]
++	public enum UnitType {
++		PIXEL,
++		EM,
++		MM,
++		POINT,
++		CM
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_VIRTUAL_DEVICE_TYPE_", type_id = "clutter_virtual_device_type_get_type ()")]
++	[Flags]
++	public enum VirtualDeviceType {
++		NONE,
++		KEYBOARD,
++		POINTER,
++		TOUCHSCREEN
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
++	[Version (since = "1.12")]
++	public enum ZoomAxis {
++		X_AXIS,
++		Y_AXIS,
++		BOTH
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
++	[Version (since = "1.10")]
++	public errordomain ImageError {
++		DATA;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")]
++	[Version (since = "0.6")]
++	public errordomain ScriptError {
++		TYPE_FUNCTION,
++		PROPERTY,
++		VALUE;
++		public static GLib.Quark quark ();
++	}
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.24")]
++	public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (deprecated = true, deprecated_since = "1.12", since = "0.2")]
++	public delegate double AlphaFunc (Clutter.Alpha alpha);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 4.9)]
++	[Version (since = "1.0")]
++	public delegate bool BindingActionFunc (GLib.Object gobject, string action_name, uint key_val, Clutter.ModifierType modifiers);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	public delegate void Callback (Clutter.Actor actor);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	public delegate void EmitInputDeviceEvent (Clutter.Event event, Clutter.InputDevice device);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.18")]
++	public delegate bool EventFilterFunc (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)]
++	[Version (since = "1.0")]
++	public delegate void PathCallback (Clutter.PathNode node);
++	[CCode (cheader_filename = "clutter/clutter.h", has_target = false)]
++	[Version (since = "1.0")]
++	public delegate bool ProgressFunc (GLib.Value a, GLib.Value b, double progress, GLib.Value retval);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)]
++	[Version (since = "0.6")]
++	public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags);
++	[CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)]
++	[Version (since = "1.10")]
++	public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total);
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string COGL;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")]
++	[Version (since = "0.4")]
++	public const int CURRENT_TIME;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")]
++	[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
++	public const string FLAVOUR;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")]
++	public const int PATH_RELATIVE;
++	[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")]
++	[Version (since = "0.8")]
++	public const int PRIORITY_REDRAW;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void base_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.12")]
++	public static void cairo_clear (Cairo.Context cr);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static void cairo_set_source_color (Cairo.Context cr, Clutter.Color color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static bool check_windowing_backend (string backend_type);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_hls (out Clutter.Color color, float hue, float luminance, float saturation);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void color_from_pixel (out Clutter.Color color, uint32 pixel);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static bool color_from_string (out Clutter.Color color, string str);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.6")]
++	public static unowned Clutter.Color? color_get_static (Clutter.StaticColor color);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.14")]
++	public static void disable_accessibility ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static void do_event (Clutter.Event event);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static uint event_add_filter (Clutter.Stage? stage, [CCode (delegate_target_pos = 2.2, destroy_notify_pos = 2.1)] owned Clutter.EventFilterFunc func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static Clutter.Event event_get ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Event event_peek ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.18")]
++	public static void event_remove_filter (uint id);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static bool events_pending ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.4")]
++	public static bool get_accessibility_enabled ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static unowned Clutter.Event get_current_event ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static uint32 get_current_event_time ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.4")]
++	public static unowned Clutter.Backend get_default_backend ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static uint get_default_frame_rate ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.2")]
++	public static Clutter.TextDirection get_default_text_direction ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.0")]
++	public static unowned Pango.FontMap get_font_map ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.8")]
++	public static GLib.OptionGroup get_option_group_without_init ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.6")]
++	public static unowned string get_script_id (GLib.Object gobject);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "0.2")]
++	public static Clutter.InitError init_with_args ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[]? entries, string? translation_domain) throws GLib.Error;
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static uint32 keysym_to_unicode (uint keyval);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static int main_level ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void main_quit ();
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	public static void set_custom_backend_func (void* func);
++	[CCode (cheader_filename = "clutter/clutter.h")]
++	[Version (since = "1.10")]
++	public static uint unicode_to_keysym (uint32 wc);
++}
+diff --git a/vapi/mutter-cogl-6-custom.vala b/vapi/mutter-cogl-6-custom.vala
+new file mode 100644
+index 00000000..a2c10645
+--- /dev/null
++++ b/vapi/mutter-cogl-6-custom.vala
+@@ -0,0 +1,125 @@
++namespace Cogl {
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Bitmap: Handle {
++		public static Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class Buffer: Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++
++	[CCode (has_type_id = false)]
++	public struct Color {
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++	}
++
++	[Compact]
++	[CCode (ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++
++	[Compact]
++	public class PixelBuffer: Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	public class Program: Handle {
++		[CCode (cname = "cogl_create_program", type = "CoglHandle*", has_construct_function = false)]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	public class Shader: Handle {
++		[CCode (cname = "cogl_create_shader", type = "CoglHandle*", has_construct_function = false)]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	public class VertexBuffer: Handle {
++		[CCode (type = "CoglHandle*", has_construct_function = false)]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++
++	[Compact]
++	[CCode (cname = "CoglHandle")]
++	public class VertexBufferIndices: Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++
++	[CCode (type_id = "COGL_TYPE_MATRIX", cheader_filename = "cogl/cogl.h")]
++	public struct Matrix {
++		[CCode (cname = "cogl_matrix_init_from_array", array_length = false, array_null_terminated = false)]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++	}
++
++	[SimpleType]
++	[GIR (name = "Bool")]
++	[BooleanType]
++	public struct Bool : bool {
++	}
++
++	public static GLib.Callback get_proc_address(string s);
++}
+diff --git a/vapi/mutter-cogl-6.deps b/vapi/mutter-cogl-6.deps
+new file mode 100644
+index 00000000..98ccac5b
+--- /dev/null
++++ b/vapi/mutter-cogl-6.deps
+@@ -0,0 +1 @@
++pango
+diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
+new file mode 100644
+index 00000000..c9ab5d57
+--- /dev/null
++++ b/vapi/mutter-cogl-6.vapi
+@@ -0,0 +1,1077 @@
++/* mutter-cogl-6.vapi generated by vapigen, do not modify. */
++
++[CCode (cprefix = "Cogl", gir_namespace = "Cogl", gir_version = "6", lower_case_cprefix = "cogl_")]
++namespace Cogl {
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", type_id = "cogl_bitmap_get_gtype ()")]
++	[Compact]
++	public class Bitmap : Cogl.Handle {
++		public static uint32 error_quark ();
++		[CCode (has_construct_function = false, type = "CoglBitmap*")]
++		[Version (since = "1.0")]
++		public Bitmap.from_file (string filename) throws GLib.Error;
++		[Version (since = "1.10")]
++		public Cogl.PixelFormat get_format ();
++		[Version (since = "1.10")]
++		public int get_height ();
++		[Version (since = "1.10")]
++		public int get_rowstride ();
++		[Version (since = "1.0")]
++		public static bool get_size_from_file (string filename, out int width, out int height);
++		[Version (since = "1.10")]
++		public int get_width ();
++		public static Cogl.Bitmap new_from_file (string filename) throws GLib.Error;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class Buffer : Cogl.Handle {
++		public uint get_size ();
++		public bool set_data (size_t offset, [CCode (array_length_type = "size_t")] uint8[] data);
++		public void unmap ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_context_get_gtype ()")]
++	public class Context : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		protected Context ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.14")]
++	public class FrameClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_handle_ref", unref_function = "cogl_handle_unref")]
++	[Compact]
++	public class Handle {
++		[CCode (cname = "cogl_is_bitmap")]
++		public bool is_bitmap ();
++		[CCode (cname = "cogl_is_buffer")]
++		public bool is_buffer ();
++		[CCode (cname = "cogl_is_material")]
++		public bool is_material ();
++		[CCode (cname = "cogl_is_offscreen")]
++		public bool is_offscreen ();
++		[CCode (cname = "cogl_is_pixel_buffer")]
++		public bool is_pixel_buffer ();
++		[CCode (cname = "cogl_is_program")]
++		public bool is_program ();
++		[CCode (cname = "cogl_is_shader")]
++		public bool is_shader ();
++		[CCode (cname = "cogl_is_texture")]
++		public bool is_texture ();
++		[CCode (cname = "cogl_is_vertex_buffer")]
++		public bool is_vertex_buffer ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
++	[Compact]
++	public class Material {
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Material ();
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_alpha_test_function (Cogl.MaterialAlphaFunc alpha_func, float alpha_reference);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color (Cogl.Color color);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer (int layer_index, Cogl.Handle texture);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_filters (int layer_index, Cogl.MaterialFilter min_filter, Cogl.MaterialFilter mag_filter);
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_point_size (float point_size);
++		[Version (deprecated = true, deprecated_since = "1.16", since = "1.4")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Compact]
++	public class MaterialLayer {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
++	public abstract class Object {
++		[CCode (has_construct_function = false)]
++		protected Object ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_offscreen_get_gtype ()")]
++	public class Offscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Offscreen ();
++		[CCode (has_construct_function = false)]
++		[Version (deprecated = true, deprecated_since = "1.16")]
++		public Offscreen.to_texture (Cogl.Texture texture);
++		[CCode (has_construct_function = false)]
++		public Offscreen.with_texture (Cogl.Texture texture);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_onscreen_get_gtype ()")]
++	public class Onscreen : Cogl.Object, Cogl.Framebuffer {
++		[CCode (has_construct_function = false)]
++		protected Onscreen ();
++		[Version (since = "1.16")]
++		public Cogl.OnscreenDirtyClosure add_dirty_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenDirtyCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "2.0")]
++		public Cogl.OnscreenResizeClosure add_resize_callback ([CCode (delegate_target_pos = 1.5)] Cogl.OnscreenResizeCallback callback, Cogl.UserDataDestroyCallback? destroy);
++		[Version (since = "1.14")]
++		public int get_buffer_age ();
++		[Version (since = "1.14")]
++		public int64 get_frame_counter ();
++		[Version (since = "2.0")]
++		public bool get_resizable ();
++		[Version (since = "2.0")]
++		public void hide ();
++		[Version (since = "1.16")]
++		public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
++		[Version (since = "1.14")]
++		public void remove_frame_callback (Cogl.FrameClosure closure);
++		[Version (since = "2.0")]
++		public void remove_resize_callback (Cogl.OnscreenResizeClosure closure);
++		[Version (since = "2.0")]
++		public void set_resizable (bool resizable);
++		[Version (since = "2.0")]
++		public void show ();
++		[Version (since = "1.10")]
++		public void swap_buffers ();
++		[Version (since = "1.16")]
++		public void swap_buffers_with_damage (int rectangles, int n_rectangles);
++		[Version (since = "1.10")]
++		public void swap_region (int rectangles, int n_rectangles);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_dirty_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "1.16")]
++	public class OnscreenDirtyClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_onscreen_resize_closure_get_gtype ()")]
++	[Compact]
++	[Version (since = "2.0")]
++	public class OnscreenResizeClosure {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "cogl_path_copy")]
++	[Compact]
++	public class Path {
++		public static void @new ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_pipeline_get_gtype ()")]
++	public class Pipeline : Cogl.Object {
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Pipeline (Cogl.Context context);
++		[Version (since = "2.0")]
++		public Cogl.Pipeline copy ();
++		[Version (since = "2.0")]
++		public void foreach_layer (Cogl.PipelineLayerCallback callback);
++		[Version (since = "2.0")]
++		public Cogl.PipelineAlphaFunc get_alpha_test_function ();
++		[Version (since = "2.0")]
++		public float get_alpha_test_reference ();
++		[Version (since = "2.0")]
++		public Cogl.Color get_color ();
++		[Version (since = "2.0")]
++		public Cogl.PipelineCullFaceMode get_cull_face_mode ();
++		[Version (since = "2.0")]
++		public Cogl.Winding get_front_face_winding ();
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_mag_filter (int layer_index);
++		[Version (since = "1.10")]
++		public Cogl.PipelineFilter get_layer_min_filter (int layer_index);
++		[Version (since = "2.0")]
++		public bool get_layer_point_sprite_coords_enabled (int layer_index);
++		[Version (since = "1.10")]
++		public unowned Cogl.Texture get_layer_texture (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_s (int layer_index);
++		[Version (since = "1.6")]
++		public Cogl.PipelineWrapMode get_layer_wrap_mode_t (int layer_index);
++		[Version (since = "2.0")]
++		public int get_n_layers ();
++		[Version (since = "2.0")]
++		public bool get_per_vertex_point_size ();
++		[Version (since = "2.0")]
++		public float get_point_size ();
++		[Version (since = "2.0")]
++		public int get_uniform_location (string uniform_name);
++		[Version (since = "2.0")]
++		public unowned Cogl.Handle get_user_program ();
++		[Version (since = "1.10")]
++		public void remove_layer (int layer_index);
++		[Version (since = "2.0")]
++		public void set_alpha_test_function (Cogl.PipelineAlphaFunc alpha_func, float alpha_reference);
++		[Version (since = "2.0")]
++		public bool set_blend (string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_blend_constant (Cogl.Color constant_color);
++		[Version (since = "2.0")]
++		public void set_color (Cogl.Color color);
++		[Version (since = "2.0")]
++		public void set_color4f (float red, float green, float blue, float alpha);
++		[Version (since = "2.0")]
++		public void set_color4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		[Version (since = "2.0")]
++		public void set_cull_face_mode (Cogl.PipelineCullFaceMode cull_face_mode);
++		[Version (since = "2.0")]
++		public void set_front_face_winding (Cogl.Winding front_winding);
++		[Version (since = "2.0")]
++		public bool set_layer_combine (int layer_index, string blend_string) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_layer_combine_constant (int layer_index, Cogl.Color constant);
++		[Version (since = "1.10")]
++		public void set_layer_filters (int layer_index, Cogl.PipelineFilter min_filter, Cogl.PipelineFilter mag_filter);
++		[Version (since = "1.10")]
++		public void set_layer_matrix (int layer_index, Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_layer_null_texture (int layer_index);
++		[Version (since = "2.0")]
++		public bool set_layer_point_sprite_coords_enabled (int layer_index, bool enable) throws GLib.Error;
++		public void set_layer_texture (int layer_index, Cogl.Texture texture);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_s (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public void set_layer_wrap_mode_t (int layer_index, Cogl.PipelineWrapMode mode);
++		[Version (since = "2.0")]
++		public bool set_per_vertex_point_size (bool enable) throws GLib.Error;
++		[Version (since = "2.0")]
++		public void set_point_size (float point_size);
++		[Version (since = "2.0")]
++		public void set_uniform_1f (int uniform_location, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_1i (int uniform_location, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_float (int uniform_location, int n_components, int count, float value);
++		[Version (since = "2.0")]
++		public void set_uniform_int (int uniform_location, int n_components, int count, int value);
++		[Version (since = "2.0")]
++		public void set_uniform_matrix (int uniform_location, int dimensions, int count, bool transpose, float value);
++		[Version (since = "2.0")]
++		public void set_user_program (Cogl.Handle program);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Compact]
++	public class PixelBuffer : Cogl.Handle {
++		public PixelBuffer (uint size);
++		public PixelBuffer.for_size (uint width, uint height, Cogl.PixelFormat format, uint stride);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", unref_function = "cogl_program_unref")]
++	[Compact]
++	public class Program : Cogl.Handle {
++		[CCode (cname = "cogl_create_program", has_construct_function = false, type = "CoglHandle*")]
++		public Program ();
++		public void attach_shader (Cogl.Shader shader_handle);
++		public int get_uniform_location (string uniform_name);
++		public void link ();
++		public static void uniform_1f (int uniform_no, float value);
++		public static void uniform_1i (int uniform_no, int value);
++		public static void uniform_float (int uniform_no, int size, [CCode (array_length_pos = 2.9)] float[] value);
++		public static void uniform_int (int uniform_no, int size, [CCode (array_length_pos = 2.9)] int[] value);
++		public static void uniform_matrix (int uniform_no, int size, bool transpose, [CCode (array_length_pos = 2.9)] float[] value);
++		public void use ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", unref_function = "cogl_shader_unref")]
++	[Compact]
++	public class Shader : Cogl.Handle {
++		[CCode (cname = "cogl_create_shader", has_construct_function = false, type = "CoglHandle*")]
++		public Shader (Cogl.ShaderType shader_type);
++		public void compile ();
++		public string get_info_log ();
++		public Cogl.ShaderType get_type ();
++		public bool is_compiled ();
++		public void source (string source);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d", type_id = "cogl_texture_2d_get_gtype ()")]
++	public class Texture2D : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2D ();
++		public void egl_image_external_alloc_finish (void* user_data, GLib.DestroyNotify destroy);
++		public void egl_image_external_bind ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "2.0")]
++		public Texture2D.from_bitmap (Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", lower_case_csuffix = "texture_2d_sliced", type_id = "cogl_texture_2d_sliced_get_gtype ()")]
++	public class Texture2DSliced : Cogl.Object, Cogl.Texture {
++		[CCode (has_construct_function = false)]
++		protected Texture2DSliced ();
++		[CCode (has_construct_function = false)]
++		[Version (since = "1.16")]
++		public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_vertex_buffer_ref", unref_function = "cogl_vertex_buffer_unref")]
++	[Compact]
++	public class VertexBuffer : Cogl.Handle {
++		[CCode (has_construct_function = false, type = "CoglHandle*")]
++		public VertexBuffer (uint n_vertices);
++		public void add (string attribute_name, uchar n_components, Cogl.AttributeType type, bool normalized, uint16 stride, void* pointer);
++		public void @delete (string attribute_name);
++		public void disable (string attribute_name);
++		public void draw (Cogl.VerticesMode mode, int first, int count);
++		public void draw_elements (Cogl.VerticesMode mode, Cogl.VertexBufferIndices indices, int min_index, int max_index, int indices_offset, int count);
++		public void enable (string attribute_name);
++		public uint get_n_vertices ();
++		public void submit ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle")]
++	[Compact]
++	public class VertexBufferIndices : Cogl.Handle {
++		public VertexBufferIndices (Cogl.IndicesType indices_type, void* indices_array, int indices_len);
++		public static unowned Cogl.VertexBufferIndices get_for_quads (uint n_indices);
++		public Cogl.IndicesType get_type ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
++	public interface Framebuffer : Cogl.Object {
++		[Version (since = "1.8")]
++		public bool allocate () throws GLib.Error;
++		[Version (since = "1.8")]
++		public void clear (ulong buffers, Cogl.Color color);
++		[Version (since = "1.8")]
++		public void clear4f (ulong buffers, float red, float green, float blue, float alpha);
++		[Version (since = "1.8")]
++		public void discard_buffers (ulong buffers);
++		[Version (since = "1.10")]
++		public void draw_multitextured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, [CCode (array_length = false)] float[] tex_coords, int tex_coords_len);
++		[Version (since = "1.10")]
++		public void draw_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2);
++		[Version (since = "1.10")]
++		public void draw_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangle (Cogl.Pipeline pipeline, float x_1, float y_1, float x_2, float y_2, float s_1, float t_1, float s_2, float t_2);
++		[Version (since = "1.10")]
++		public void draw_textured_rectangles (Cogl.Pipeline pipeline, [CCode (array_length = false)] float[] coordinates, uint n_rectangles);
++		public static uint32 error_quark ();
++		[Version (since = "1.10")]
++		public void finish ();
++		[Version (since = "1.10")]
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		[Version (since = "1.8")]
++		public int get_alpha_bits ();
++		[Version (since = "1.8")]
++		public int get_blue_bits ();
++		[Version (since = "1.8")]
++		public unowned Cogl.Context get_context ();
++		[Version (since = "2.0")]
++		public int get_depth_bits ();
++		[Version (since = "1.18")]
++		public bool get_depth_write_enabled ();
++		[Version (since = "1.8")]
++		public bool get_dither_enabled ();
++		[Version (since = "1.8")]
++		public int get_green_bits ();
++		[Version (since = "1.8")]
++		public int get_height ();
++		public bool get_is_stereo ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_modelview_matrix ();
++		[Version (since = "1.10")]
++		public Cogl.Matrix get_projection_matrix ();
++		[Version (since = "1.8")]
++		public int get_red_bits ();
++		[Version (since = "1.10")]
++		public int get_samples_per_pixel ();
++		[Version (since = "1.20")]
++		public Cogl.StereoMode get_stereo_mode ();
++		[Version (since = "1.8")]
++		public void get_viewport4fv ([CCode (array_length = false)] out unowned float viewport[4]);
++		[Version (since = "1.8")]
++		public float get_viewport_height ();
++		[Version (since = "1.8")]
++		public float get_viewport_width ();
++		[Version (since = "1.8")]
++		public float get_viewport_x ();
++		[Version (since = "1.8")]
++		public float get_viewport_y ();
++		[Version (since = "1.8")]
++		public int get_width ();
++		[Version (since = "1.10")]
++		public void identity_matrix ();
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		[Version (since = "1.10")]
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		[Version (since = "1.10")]
++		public void pop_clip ();
++		[Version (since = "1.10")]
++		public void pop_matrix ();
++		[Version (since = "1.10")]
++		public void push_matrix ();
++		[Version (since = "1.10")]
++		public void push_rectangle_clip (float x_1, float y_1, float x_2, float y_2);
++		public void push_region_clip (Cairo.Region region);
++		[Version (since = "1.10")]
++		public void push_scissor_clip (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public bool read_pixels (int x, int y, int width, int height, Cogl.PixelFormat format, uint8 pixels);
++		[Version (since = "1.10")]
++		public bool read_pixels_into_bitmap (int x, int y, Cogl.ReadPixelsFlags source, Cogl.Bitmap bitmap);
++		[Version (since = "1.8")]
++		public void resolve_samples ();
++		[Version (since = "1.8")]
++		public void resolve_samples_region (int x, int y, int width, int height);
++		[Version (since = "1.10")]
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		[Version (since = "1.10")]
++		public void scale (float x, float y, float z);
++		[Version (since = "1.18")]
++		public void set_depth_write_enabled (bool depth_write_enabled);
++		[Version (since = "1.8")]
++		public void set_dither_enabled (bool dither_enabled);
++		[Version (since = "1.10")]
++		public void set_modelview_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void set_projection_matrix (Cogl.Matrix matrix);
++		[Version (since = "1.8")]
++		public void set_samples_per_pixel (int samples_per_pixel);
++		[Version (since = "1.20")]
++		public void set_stereo_mode (Cogl.StereoMode stereo_mode);
++		[Version (since = "1.8")]
++		public void set_viewport (float x, float y, float width, float height);
++		[Version (since = "1.10")]
++		public void transform (Cogl.Matrix matrix);
++		[Version (since = "1.10")]
++		public void translate (float x, float y, float z);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_texture_get_gtype ()")]
++	public interface Texture : Cogl.Object {
++		public bool allocate () throws GLib.Error;
++		public static uint32 error_quark ();
++		[Version (since = "1.18")]
++		public Cogl.TextureComponents get_components ();
++		public int get_data (Cogl.PixelFormat format, uint rowstride, uint8 data);
++		public bool get_gl_texture (out uint out_gl_handle, out uint out_gl_target);
++		public uint get_height ();
++		public int get_max_waste ();
++		[Version (since = "1.18")]
++		public bool get_premultiplied ();
++		public uint get_width ();
++		public bool is_sliced ();
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++		public static Cogl.Texture new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++		[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
++		public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
++		[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++		public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++		[Version (since = "1.18")]
++		public void set_components (Cogl.TextureComponents components);
++		public bool set_data (Cogl.PixelFormat format, int rowstride, uint8 data, int level) throws GLib.Error;
++		[Version (since = "1.18")]
++		public void set_premultiplied (bool premultiplied);
++		public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, uint8 data);
++		[Version (since = "1.8")]
++		public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[SimpleType]
++	public struct Angle : int32 {
++	}
++	[BooleanType]
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[GIR (name = "Bool")]
++	[SimpleType]
++	public struct Bool : bool {
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.0")]
++	public struct Color {
++		public Cogl.Color? copy ();
++		public Color.from_4f (float red, float green, float blue, float alpha);
++		public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public float get_alpha ();
++		public uint8 get_alpha_byte ();
++		public float get_alpha_float ();
++		public float get_blue ();
++		public uint8 get_blue_byte ();
++		public float get_blue_float ();
++		public float get_green ();
++		public uint8 get_green_byte ();
++		public float get_green_float ();
++		public float get_red ();
++		public uint8 get_red_byte ();
++		public float get_red_float ();
++		[Version (since = "1.4")]
++		public void init_from_4f (float red, float green, float blue, float alpha);
++		[Version (since = "1.4")]
++		public void init_from_4fv (float color_array);
++		[Version (since = "1.4")]
++		public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
++		public void premultiply ();
++		[Version (since = "1.4")]
++		public void set_alpha (float alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_byte (uint8 alpha);
++		[Version (since = "1.4")]
++		public void set_alpha_float (float alpha);
++		[Version (since = "1.4")]
++		public void set_blue (float blue);
++		[Version (since = "1.4")]
++		public void set_blue_byte (uint8 blue);
++		[Version (since = "1.4")]
++		public void set_blue_float (float blue);
++		[Version (since = "1.4")]
++		public void set_green (float green);
++		[Version (since = "1.4")]
++		public void set_green_byte (uint8 green);
++		[Version (since = "1.4")]
++		public void set_green_float (float green);
++		[Version (since = "1.4")]
++		public void set_red (float red);
++		[Version (since = "1.4")]
++		public void set_red_byte (uint8 red);
++		[Version (since = "1.4")]
++		public void set_red_float (float red);
++		[Version (since = "1.16")]
++		public void to_hsl (out float hue, out float saturation, out float luminance);
++		[Version (since = "1.4")]
++		public void unpremultiply ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.8")]
++	public struct DebugObjectTypeInfo {
++		public weak string name;
++		public ulong instance_count;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "COGL_TYPE_MATRIX")]
++	public struct Matrix {
++		public float xx;
++		public float yx;
++		public float zx;
++		public float wx;
++		public float xy;
++		public float yy;
++		public float zy;
++		public float wy;
++		public float xz;
++		public float yz;
++		public float zz;
++		public float wz;
++		public float xw;
++		public float yw;
++		public float zw;
++		public float ww;
++		[Version (since = "1.6")]
++		public Cogl.Matrix? copy ();
++		[Version (since = "1.6")]
++		public void free ();
++		[CCode (array_length = false, array_null_terminated = false, cname = "cogl_matrix_init_from_array")]
++		public Matrix.from_array ([CCode (array_length = false)] float[] array);
++		public void frustum (float left, float right, float bottom, float top, float z_near, float z_far);
++		public unowned float[] get_array ();
++		[Version (since = "1.2")]
++		public bool get_inverse (out Cogl.Matrix inverse);
++		[CCode (cname = "cogl_matrix_init_identity")]
++		public Matrix.identity ();
++		public void init_from_euler (Graphene.Euler euler);
++		[Version (since = "2.0")]
++		public void init_translation (float tx, float ty, float tz);
++		[Version (since = "1.8")]
++		public bool is_identity ();
++		[Version (since = "1.8")]
++		public void look_at (float eye_position_x, float eye_position_y, float eye_position_z, float object_x, float object_y, float object_z, float world_up_x, float world_up_y, float world_up_z);
++		[CCode (cname = "cogl_matrix_multiply")]
++		public Matrix.multiply (Cogl.Matrix a, Cogl.Matrix b);
++		[Version (since = "1.10")]
++		public void orthographic (float x_1, float y_1, float x_2, float y_2, float near, float far);
++		public void perspective (float fov_y, float aspect, float z_near, float z_far);
++		public void project_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void rotate (float angle, float x, float y, float z);
++		[Version (since = "2.0")]
++		public void rotate_euler (Graphene.Euler euler);
++		public void scale (float sx, float sy, float sz);
++		public static void transform_point (ref Cogl.Matrix matrix, ref float x, ref float y, ref float z, ref float w);
++		public void transform_points (int n_components, size_t stride_in, void* points_in, size_t stride_out, void* points_out, int n_points);
++		public void translate (float x, float y, float z);
++		[Version (since = "1.10")]
++		public void transpose ();
++		[Version (since = "1.8")]
++		public void view_2d_in_frustum (float left, float right, float bottom, float top, float z_near, float z_2d, float width_2d, float height_2d);
++		[Version (since = "1.8")]
++		public void view_2d_in_perspective (float fov_y, float aspect, float z_near, float z_2d, float width_2d, float height_2d);
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.16")]
++	public struct OnscreenDirtyInfo {
++		public int x;
++		public int y;
++		public int width;
++		public int height;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	public struct TextureVertex {
++		public float x;
++		public float y;
++		public float z;
++		public float tx;
++		public float ty;
++		public Cogl.Color color;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
++	[Version (since = "1.4")]
++	public struct UserDataKey {
++		public int unused;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglColorSizeCheck", has_type_id = false)]
++	public struct _ColorSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglColor_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglMatrixSizeCheck", has_type_id = false)]
++	public struct _MatrixSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglMatrix_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "_CoglTextureVertexSizeCheck", has_type_id = false)]
++	public struct _TextureVertexSizeCheck {
++		[CCode (array_length = false)]
++		public weak char[] compile_time_assert_CoglTextureVertex_size;
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_ATTRIBUTE_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum AttributeType {
++		BYTE,
++		UNSIGNED_BYTE,
++		SHORT,
++		UNSIGNED_SHORT,
++		FLOAT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum BitmapError {
++		FAILED,
++		UNKNOWN_TYPE,
++		CORRUPT_IMAGE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum BlendStringError {
++		PARSE_ERROR,
++		ARGUMENT_PARSE_ERROR,
++		INVALID_ERROR,
++		GPU_UNSUPPORTED_ERROR;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BUFFER_BIT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum BufferBit {
++		COLOR,
++		DEPTH,
++		STENCIL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum BufferTarget {
++		WINDOW_BUFFER,
++		OFFSCREEN_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_DEPTH_TEST_FUNCTION_", has_type_id = false)]
++	public enum DepthTestFunction {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_EGL_IMAGE_FLAG_", has_type_id = false)]
++	[Flags]
++	public enum EglImageFlags {
++		NONE,
++		NO_GET_DATA
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FEATURE_ID_", has_type_id = false)]
++	[Version (since = "1.10")]
++	public enum FeatureID {
++		[CCode (cname = "COGL_FEATURE_ID_UNSIGNED_INT_INDICES")]
++		OGL_FEATURE_ID_UNSIGNED_INT_INDICES,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_READ")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_READ,
++		[CCode (cname = "COGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE")]
++		OGL_FEATURE_ID_MAP_BUFFER_FOR_WRITE,
++		[CCode (cname = "COGL_FEATURE_ID_SWAP_BUFFERS_EVENT")]
++		OGL_FEATURE_ID_SWAP_BUFFERS_EVENT,
++		[CCode (cname = "COGL_FEATURE_ID_PRESENTATION_TIME")]
++		OGL_FEATURE_ID_PRESENTATION_TIME,
++		[CCode (cname = "COGL_FEATURE_ID_FENCE")]
++		OGL_FEATURE_ID_FENCE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_RG")]
++		OGL_FEATURE_ID_TEXTURE_RG,
++		[CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")]
++		OGL_FEATURE_ID_BUFFER_AGE,
++		[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
++		OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)]
++	public enum FilterReturn {
++		CONTINUE,
++		REMOVE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAME_EVENT_", has_type_id = false)]
++	[Version (since = "1.14")]
++	public enum FrameEvent {
++		SYNC,
++		COMPLETE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)]
++	public enum FramebufferError {
++		[CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")]
++		FRAMEBUFFER_ERROR_ALLOCATE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_GRAPHICS_RESET_STATUS_", has_type_id = false)]
++	public enum GraphicsResetStatus {
++		NO_ERROR,
++		GUILTY_CONTEXT_RESET,
++		INNOCENT_CONTEXT_RESET,
++		UNKNOWN_CONTEXT_RESET,
++		PURGED_CONTEXT_RESET
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_INDICES_TYPE_UNSIGNED_", has_type_id = false)]
++	public enum IndicesType {
++		BYTE,
++		SHORT,
++		INT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
++	public enum MaterialAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_FILTER_", has_type_id = false)]
++	public enum MaterialFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum MaterialWrapMode {
++		REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
++	public enum PipelineAlphaFunc {
++		NEVER,
++		LESS,
++		EQUAL,
++		LEQUAL,
++		GREATER,
++		NOTEQUAL,
++		GEQUAL,
++		ALWAYS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_CULL_FACE_MODE_", has_type_id = false)]
++	public enum PipelineCullFaceMode {
++		NONE,
++		FRONT,
++		BACK,
++		BOTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_FILTER_", has_type_id = false)]
++	public enum PipelineFilter {
++		NEAREST,
++		LINEAR,
++		NEAREST_MIPMAP_NEAREST,
++		LINEAR_MIPMAP_NEAREST,
++		NEAREST_MIPMAP_LINEAR,
++		LINEAR_MIPMAP_LINEAR
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_WRAP_MODE_", has_type_id = false)]
++	[Version (since = "2.0")]
++	public enum PipelineWrapMode {
++		REPEAT,
++		MIRRORED_REPEAT,
++		CLAMP_TO_EDGE,
++		AUTOMATIC
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIXEL_FORMAT_", has_type_id = false)]
++	[Flags]
++	[Version (since = "0.8")]
++	public enum PixelFormat {
++		ANY,
++		A_8,
++		RGB_565,
++		RGBA_4444,
++		RGBA_5551,
++		YUV,
++		G_8,
++		RG_88,
++		RGB_888,
++		BGR_888,
++		RGBA_8888,
++		BGRA_8888,
++		ARGB_8888,
++		ABGR_8888,
++		RGBA_1010102,
++		BGRA_1010102,
++		ARGB_2101010,
++		ABGR_2101010,
++		RGBA_8888_PRE,
++		BGRA_8888_PRE,
++		ARGB_8888_PRE,
++		ABGR_8888_PRE,
++		RGBA_4444_PRE,
++		RGBA_5551_PRE,
++		RGBA_1010102_PRE,
++		BGRA_1010102_PRE,
++		ARGB_2101010_PRE,
++		ABGR_2101010_PRE,
++		DEPTH_16,
++		DEPTH_32,
++		DEPTH_24_STENCIL_8;
++		public int get_bytes_per_pixel (int plane);
++		public int get_n_planes ();
++		public unowned string to_string ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_READ_PIXELS_COLOR_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum ReadPixelsFlags {
++		[CCode (cname = "COGL_READ_PIXELS_COLOR_BUFFER")]
++		READ_PIXELS_COLOR_BUFFER
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)]
++	public enum RendererError {
++		XLIB_DISPLAY_OPEN,
++		BAD_CONSTRAINT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SHADER_TYPE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum ShaderType {
++		VERTEX,
++		FRAGMENT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_STEREO_", has_type_id = false)]
++	public enum StereoMode {
++		BOTH,
++		LEFT,
++		RIGHT
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)]
++	[Version (since = "1.4")]
++	public enum SystemError {
++		UNSUPPORTED,
++		NO_MEMORY
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_COMPONENTS_", has_type_id = false)]
++	[Version (since = "1.18")]
++	public enum TextureComponents {
++		A,
++		RG,
++		RGB,
++		RGBA,
++		DEPTH
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)]
++	[Version (since = "1.8")]
++	public enum TextureError {
++		SIZE,
++		FORMAT,
++		BAD_PARAMETER,
++		TYPE;
++		public static uint32 quark ();
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_", has_type_id = false)]
++	[Flags]
++	[Version (since = "1.0")]
++	public enum TextureFlags {
++		NONE,
++		NO_AUTO_MIPMAP,
++		NO_SLICING,
++		NO_ATLAS
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_VERTICES_MODE_", has_type_id = false)]
++	[Version (since = "1.0")]
++	public enum VerticesMode {
++		POINTS,
++		LINES,
++		LINE_LOOP,
++		LINE_STRIP,
++		TRIANGLES,
++		TRIANGLE_STRIP,
++		TRIANGLE_FAN
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINDING_", has_type_id = false)]
++	public enum Winding {
++		CLOCKWISE,
++		COUNTER_CLOCKWISE
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
++	public enum WinsysFeature {
++		MULTIPLE_ONSCREEN,
++		SWAP_THROTTLE,
++		VBLANK_COUNTER,
++		VBLANK_WAIT,
++		TEXTURE_FROM_PIXMAP,
++		SWAP_BUFFERS_EVENT,
++		SWAP_REGION,
++		SWAP_REGION_THROTTLE,
++		SWAP_REGION_SYNCHRONIZED,
++		BUFFER_AGE,
++		SYNC_AND_COMPLETE_EVENT,
++		N_FEATURES
++	}
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "1.8")]
++	public delegate void DebugObjectForeachTypeCallback (Cogl.DebugObjectTypeInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	[Version (since = "0.10")]
++	public delegate void FeatureCallback (Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "1.16")]
++	public delegate void OnscreenDirtyCallback (Cogl.Onscreen onscreen, Cogl.OnscreenDirtyInfo info);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 3.9)]
++	[Version (since = "2.0")]
++	public delegate void OnscreenResizeCallback (Cogl.Onscreen onscreen, int width, int height);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 2.9)]
++	[Version (since = "2.0")]
++	public delegate bool PipelineLayerCallback (Cogl.Pipeline pipeline, int layer_index);
++	[CCode (cheader_filename = "cogl/cogl.h", instance_pos = 1.9)]
++	public delegate bool Texture2DEGLImageExternalAlloc (Cogl.Texture2D tex_2d) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h", has_target = false)]
++	public delegate void UserDataDestroyCallback (void* data);
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_AFIRST_BIT")]
++	public const int AFIRST_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_A_BIT")]
++	public const int A_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_BGR_BIT")]
++	public const int BGR_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_DEPTH_BIT")]
++	public const int DEPTH_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PIXEL_FORMAT_MAX_PLANES")]
++	public const int PIXEL_FORMAT_MAX_PLANES;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_PREMULT_BIT")]
++	public const int PREMULT_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_STENCIL_BIT")]
++	public const int STENCIL_BIT;
++	[CCode (cheader_filename = "cogl/cogl.h", cname = "COGL_TEXTURE_MAX_WASTE")]
++	public const int TEXTURE_MAX_WASTE;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool blit_framebuffer (Cogl.Framebuffer src, Cogl.Framebuffer dest, int src_x, int src_y, int dst_x, int dst_y, int width, int height) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool clutter_winsys_has_feature_CLUTTER (Cogl.WinsysFeature feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static bool color_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.16")]
++	public static void color_init_from_hsl (out Cogl.Color color, float hue, float saturation, float luminance);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static void debug_matrix_print (Cogl.Matrix matrix);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_foreach_type (Cogl.DebugObjectForeachTypeCallback func);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.8")]
++	public static void debug_object_print_instances ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.0")]
++	public static void flush ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static void foreach_feature (Cogl.Context context, Cogl.FeatureCallback callback);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_backface_culling_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.14")]
++	public static int64 get_clock_time (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool get_depth_test_enabled ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static Cogl.GraphicsResetStatus get_graphics_reset_status (Cogl.Context context);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
++	public static GLib.OptionGroup get_option_group ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static GLib.Callback get_proc_address (string s);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18")]
++	public static GLib.Type gtype_matrix_get_type ();
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool has_feature (Cogl.Context context, Cogl.FeatureID feature);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_context (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_framebuffer (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_onscreen (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "2.0")]
++	public static bool is_pipeline (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	public static bool is_texture_2d (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static bool is_texture_2d_sliced (void* object);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.4")]
++	public static bool matrix_equal (void* v1, void* v2);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_backface_culling_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void set_depth_test_enabled (bool setting);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_compile (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static string shader_get_info_log (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static Cogl.ShaderType shader_get_type (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static bool shader_is_compiled (Cogl.Handle handle);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.16")]
++	public static void shader_source (Cogl.Handle shader, string source);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
++	public static Cogl.Texture texture_new_from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
++	public static Cogl.Texture texture_new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
++	[CCode (cheader_filename = "cogl/cogl.h")]
++	[Version (since = "1.10")]
++	public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
++}
+-- 
+2.25.0
+
diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template
index b32e7734d3b..180cdc02f1f 100644
--- a/srcpkgs/budgie-desktop/template
+++ b/srcpkgs/budgie-desktop/template
@@ -1,21 +1,22 @@
 # Template file for 'budgie-desktop'
 pkgname=budgie-desktop
 version=10.5.1
-revision=3
+revision=4
 build_style=meson
 build_helper=gir
 configure_args="-Dwith-gtk-doc=false -Dwith-desktop-icons=none"
 hostmakedepends="pkg-config intltool vala glib-devel gobject-introspection sassc"
 makedepends="alsa-lib-devel libnotify-devel accountsservice-devel libpeas-devel libwnck-devel
-mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
-gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
-depends="gnome-session gnome-settings-daemon gnome-control-center elogind"
+ mutter-devel ibus-devel gnome-desktop-devel pulseaudio-devel upower-devel gtk+3-devel polkit-devel
+ gnome-bluetooth-devel gnome-menus-devel gnome-settings-daemon-devel vala libuuid-devel libupower-glib3"
+depends="gnome-session gnome-settings-daemon gnome-control-center gnome-themes-extra elogind"
 short_desc="Modern desktop environment from the Solus Project"
 maintainer="Lorem <notloremipsum@protonmail.com>"
 license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://github.com/solus-project/budgie-desktop"
 distfiles="https://github.com/solus-project/budgie-desktop/releases/download/v${version}/budgie-desktop-${version}.tar.xz"
 checksum=d035ec764e0093722a832411aeb6aba296c0995d927ea069b205b19c85aae565
+patch_args="-Np1"
 
 pre_configure() {
 	vsed -i 's/exec gnome-session/exec gnome-session --builtin/' src/session/budgie-desktop.in

From 72b6b9150221e6336349eb9b8a5aba533f234bfe Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:07 +0600
Subject: [PATCH 42/68] xdg-desktop-portal-gtk: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/xdg-desktop-portal-gtk/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xdg-desktop-portal-gtk/template b/srcpkgs/xdg-desktop-portal-gtk/template
index dee0e463386..558c75f539d 100644
--- a/srcpkgs/xdg-desktop-portal-gtk/template
+++ b/srcpkgs/xdg-desktop-portal-gtk/template
@@ -1,7 +1,7 @@
 # Template file for 'xdg-desktop-portal-gtk'
 pkgname=xdg-desktop-portal-gtk
 version=1.6.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config libxslt glib-devel xdg-desktop-portal gettext"
 makedepends="flatpak-devel gtk+3-devel libxslt-devel libglib-devel

From 58288f1a1c8643b53f55cc8e54676a0761b57c8b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:14 +0600
Subject: [PATCH 43/68] cheese: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/cheese/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cheese/template b/srcpkgs/cheese/template
index 7a56ba039fb..037cda49c98 100644
--- a/srcpkgs/cheese/template
+++ b/srcpkgs/cheese/template
@@ -1,7 +1,7 @@
 # Template file for 'cheese'
 pkgname=cheese
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Dgtk_doc=$(vopt_if gtk_doc 'true' 'false')

From 11150e85890220ee9de45be432fc30a19cb1774b Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:21 +0600
Subject: [PATCH 44/68] gnome-books: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-books/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-books/template b/srcpkgs/gnome-books/template
index 114b9e034c2..1d4974fe183 100644
--- a/srcpkgs/gnome-books/template
+++ b/srcpkgs/gnome-books/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-books'
 pkgname=gnome-books
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="pkg-config vala glib-devel librsvg docbook-xsl libxslt

From 7315d0d48f904b52a51e64e8f606c9588de46403 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:28 +0600
Subject: [PATCH 45/68] gnome-characters: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-characters/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-characters/template b/srcpkgs/gnome-characters/template
index 89868f4bc04..ac264e51a6a 100644
--- a/srcpkgs/gnome-characters/template
+++ b/srcpkgs/gnome-characters/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-characters'
 pkgname=gnome-characters
 version=3.34.0
-revision=2
+revision=3
 build_style=meson
 build_helper="gir"
 hostmakedepends="gettext gjs glib-devel itstool pkg-config"

From 821abd4dee1e8f4ed667110142406e0eeb34acd2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:36 +0600
Subject: [PATCH 46/68] gnome-documents: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-documents/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-documents/template b/srcpkgs/gnome-documents/template
index 97b53d635d7..7e45b825e71 100644
--- a/srcpkgs/gnome-documents/template
+++ b/srcpkgs/gnome-documents/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-documents'
 pkgname=gnome-documents
 version=3.34.0
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="docbook-xsl gettext itstool pkg-config glib-devel libxslt gdk-pixbuf

From c362fd41d528c9398507231d23b6ef4b6ca010e2 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:46 +0600
Subject: [PATCH 47/68] gnome-font-viewer: rebuild against
 libgnome-desktop-3.so.19

---
 srcpkgs/gnome-font-viewer/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-font-viewer/template b/srcpkgs/gnome-font-viewer/template
index 6d035366d44..f74fcbcb000 100644
--- a/srcpkgs/gnome-font-viewer/template
+++ b/srcpkgs/gnome-font-viewer/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-font-viewer'
 pkgname=gnome-font-viewer
 version=3.34.0
-revision=1
+revision=2
 build_style=meson
 hostmakedepends="pkg-config glib-devel"
 makedepends="fontconfig-devel freetype-devel glib-devel gtk+3-devel

From 8f116a4be17ca3d43ab3e0f3d9a09fb94ac0dec3 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:49:54 +0600
Subject: [PATCH 48/68] gnome-screensaver: rebuild against
 libgnome-desktop-3.so.19

---
 .../patches/gnome-desktop-3.36.patch                | 13 +++++++++++++
 srcpkgs/gnome-screensaver/template                  |  5 +++--
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch

diff --git a/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
new file mode 100644
index 00000000000..58d92e463a3
--- /dev/null
+++ b/srcpkgs/gnome-screensaver/patches/gnome-desktop-3.36.patch
@@ -0,0 +1,13 @@
+diff -Naur gnome-screensaver-3.6.1.orig/src/gs-manager.c gnome-screensaver-3.6.1/src/gs-manager.c
+--- gnome-screensaver-3.6.1.orig/src/gs-manager.c	2020-03-08 08:53:46.408431578 +0000
++++ gnome-screensaver-3.6.1/src/gs-manager.c	2020-03-08 08:54:31.875738732 +0000
+@@ -788,8 +788,7 @@
+         surface = gnome_bg_create_surface (manager->priv->bg,
+                                            gdk_window,
+                                            width,
+-                                           height,
+-                                           FALSE);
++                                           height);
+         gs_window_set_background_surface (window, surface);
+         cairo_surface_destroy (surface);
+ }
diff --git a/srcpkgs/gnome-screensaver/template b/srcpkgs/gnome-screensaver/template
index 363fcf12e10..54a9a35eccb 100644
--- a/srcpkgs/gnome-screensaver/template
+++ b/srcpkgs/gnome-screensaver/template
@@ -1,15 +1,16 @@
 # Template file for 'gnome-screensaver'
 pkgname=gnome-screensaver
 version=3.6.1
-revision=2
+revision=3
 build_style=gnu-configure
 configure_args="--enable-compile-warnings=minimum"
 hostmakedepends="pkg-config automake intltool glib-devel"
 makedepends="gnome-desktop-devel dbus-glib-devel pam-devel"
 depends="gnome-desktop libgnomekbd dbus"
-short_desc="A new screensaver that can replace xscreensaver"
+short_desc="New screensaver that can replace xscreensaver"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Projects/GnomeScreensaver"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=f39b78d4f7fed748c7f0a31d694112fb907c6d3c4e63db22eb858df07e962cd0
+patch_args="-Np1"

From c8921aa4702f5ebbae853098cca9e764800d5860 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:01 +0600
Subject: [PATCH 49/68] gnome-weather: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/gnome-weather/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-weather/template b/srcpkgs/gnome-weather/template
index d30be9bf192..c028e46ba65 100644
--- a/srcpkgs/gnome-weather/template
+++ b/srcpkgs/gnome-weather/template
@@ -1,7 +1,7 @@
 # Template file for 'gnome-weather'
 pkgname=gnome-weather
 version=3.36.1
-revision=1
+revision=2
 build_helper="gir"
 build_style=meson
 hostmakedepends="gettext pkg-config itstool glib-devel gjs"

From 2556edd631ed52381730c58993c2d7de9df1b0c6 Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Tue, 16 Jun 2020 19:50:09 +0600
Subject: [PATCH 50/68] totem: rebuild against libgnome-desktop-3.so.19

---
 srcpkgs/totem/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index 81522b31488..e4186632153 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -1,7 +1,7 @@
 # Template file for 'totem'
 pkgname=totem
 version=3.34.1
-revision=1
+revision=2
 build_style=meson
 build_helper="gir"
 configure_args="-Denable-python=no -Denable-nautilus=yes

From 90358efa5eacae6fd01237778cb0b6dc8891122b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 16 Jun 2020 22:56:53 +0700
Subject: [PATCH 51/68] gnome-desktop: add do_check

---
 srcpkgs/gnome-desktop/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-desktop/template b/srcpkgs/gnome-desktop/template
index c1a7408c207..ccd7c56569a 100644
--- a/srcpkgs/gnome-desktop/template
+++ b/srcpkgs/gnome-desktop/template
@@ -11,6 +11,7 @@ makedepends="eudev-libudev-devel gsettings-desktop-schemas-devel gtk+3-devel
  iso-codes libglib-devel libseccomp-devel libX11-devel libXext-devel
  libxkbfile-devel libXrandr-devel gdk-pixbuf-devel"
 depends="bubblewrap gsettings-desktop-schemas iso-codes xkeyboard-config"
+checkdepends="$depends xorg-server-xvfb"
 short_desc="GNOME desktop management utilities"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"
@@ -21,6 +22,22 @@ checksum=38f994dcb1e1ae093d1c929c7acc4f88e39111e43b5fdc13125b0f6e2311c789
 build_options="gir"
 build_options_default="gir"
 
+do_check() {
+	# there is still 1 test fail for he_IL locale in musl
+	if test "$XBPS_TARGET_LIBC" != musl; then
+		local _pid
+		Xvfb :1 -screen 0 1366x768x24 &
+		_pid=$!
+		trap "kill $_pid" EXIT
+		trap 'exit 1' INT HUP TERM
+		export DISPLAY=:1
+		ninja -C build test
+		trap - EXIT INT HUP TERM
+		kill $_pid
+	fi
+}
+
+
 gnome-desktop-devel_package() {
 	depends="gtk+3-devel gsettings-desktop-schemas-devel>=3.12
 	 gdk-pixbuf-devel iso-codes libX11-devel libglib-devel libseccomp-devel

From 73fef8bd434078ab175b695cc67ae2dc32dd70ba Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 06:25:55 +0700
Subject: [PATCH 52/68] gnome-settings-daemon: fix checkdepends

---
 srcpkgs/gnome-settings-daemon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-settings-daemon/template b/srcpkgs/gnome-settings-daemon/template
index 9ceb1d13de9..f4539a72d43 100644
--- a/srcpkgs/gnome-settings-daemon/template
+++ b/srcpkgs/gnome-settings-daemon/template
@@ -12,7 +12,7 @@ makedepends="NetworkManager-devel alsa-lib-devel colord-devel cups-devel gcr-dev
  xf86-input-wacom-devel"
 depends="hicolor-icon-theme pulseaudio"
 checkdepends="elogind libnotify python3-dbusmock python3-gobject
- python3-pycodestyle"
+ python3-pycodestyle which hwids eudev"
 short_desc="GNOME settings daemon"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"

From 273a8b47fb568de3b90723ff840329d8c95b07fa Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sat, 20 Jun 2020 07:44:12 +0700
Subject: [PATCH 53/68] mutter: skip do_check

---
 srcpkgs/mutter/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/mutter/template b/srcpkgs/mutter/template
index 132cd9dd645..117b59a29a9 100644
--- a/srcpkgs/mutter/template
+++ b/srcpkgs/mutter/template
@@ -22,6 +22,10 @@ checksum=6ace742e8d889083d3c32d79543d9022483f0b00b630eceab5e3804aad3aeed2
 shlib_provides="libmutter-clutter-6.so libmutter-cogl-6.so
  libmutter-cogl-pango-6.so libmutter-cogl-path-6.so"
 
+do_check() {
+	msg_warn "xvfb does not work\n"
+}
+
 mutter-devel_package() {
 	depends="gsettings-desktop-schemas graphene-devel gtk+3-devel clutter-devel
 	 libX11-devel libXtst-devel mutter-${version}_${revision}"

From 7089901163884a9755b20ca0923049e81f6ec0dc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 21 Jun 2020 22:53:03 +0700
Subject: [PATCH 54/68] evolution-data-server: split vala build option from gir

---
 srcpkgs/evolution-data-server/template | 48 ++++++++++++--------------
 1 file changed, 23 insertions(+), 25 deletions(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index ebf8145f88c..d44a7ccc143 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -2,45 +2,41 @@
 pkgname=evolution-data-server
 version=3.36.3
 revision=1
+_basever=${version%.*}
 build_style=cmake
 build_helper=gir
 configure_args="-DENABLE_UOA=OFF
- $(vopt_if gir '-DENABLE_INTROSPECTION=ON -DENABLE_VALA_BINDINGS=ON' '-DENABLE_WEATHER=OFF')"
+ $(vopt_if gir -DENABLE_INTROSPECTION=ON)
+ $(vopt_if vala -DENABLE_VALA_BINDINGS=ON)"
 hostmakedepends="flex glib-devel gperf intltool pkg-config libglib-devel
- $(vopt_if gir 'gobject-introspection')"
-makedepends="boost-devel libcanberra-devel libgdata-devel $(vopt_if gir libgweather-devel)
- libical-devel libsecret-devel mit-krb5-devel $(vopt_if gir 'vala-devel') webkit2gtk-devel"
-depends="$(vopt_if gir libgweather) libsoup-gnome"
+ $(vopt_if vala vala)"
+makedepends="boost-devel libcanberra-devel libgdata-devel libical-devel
+ libsecret-devel mit-krb5-devel webkit2gtk-devel libgweather-devel
+ $(vopt_if vala vala-devel)"
+depends="libgweather libsoup-gnome dbus tzdata"
+checkdepends="$depends"
 short_desc="Centralized access to appointments and contacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-only"
 homepage="https://wiki.gnome.org/Apps/Evolution"
-changelog="https://raw.githubusercontent.com/GNOME/evolution-data-server/gnome-3-36/NEWS"
-distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
+changelog="https://raw.githubusercontent.com/GNOME/$pkgname/gnome-${_basever/./-}/NEWS"
+distfiles="${GNOME_SITE}/${pkgname}/${_basever}/${pkgname}-${version}.tar.xz"
 checksum=1f5f48173d0f288219d73d4f193cb921ae631932ba84030f05751c42bb003db2
 
-build_options="gir"
+build_options="gir vala"
 if [ -z "$CROSS_BUILD" ]; then
-	build_options_default="gir"
+	build_options_default="gir vala"
 fi
 
-# cmake perfomrms 2 checks using binary runtime, about iconv and sfrtime.
-# musl (1.1.16) does not support "ISO-2022-JP" encoding (see its roadmap),
-# although evolution-data-server is fine with musl.
-# If crossbuild, cmake let disabling runtime checks via specific directives.
-# test iconv-detect.c also generates iconv-detect.h that is required for build.
-# So completly disable test from iconv-detect.c (cmake.patch file) and
-# use a cmake cache file on crossbuild to disable sfrtime running test.
-if [ "$CROSS_BUILD" ]; then
-	configure_args+=" -C disableRuntimeTests.cmake"
-fi
 
-pre_configure() {
-	mkdir -p build
-	cp ${FILESDIR}/iconv-detect.h ${wrksrc}/build/.
-	if [ "$CROSS_BUILD" ]; then
-		cp ${FILESDIR}/disableRuntimeTests.cmake ${wrksrc}/build/.
-	fi
+do_check() {
+	cd build
+	# TODO This test is problematic, first run usually fail
+	# Signify something wrong with evolution-data-server on first run
+	ctest -R test-book-client-custom-summary || true
+	# make test run ctest --force-new-ctest-process which is problematic
+	# noone should run multiple instance of evolution-data-server irl.
+	ctest
 }
 
 post_install() {
@@ -59,6 +55,8 @@ evolution-data-server-devel_package() {
 		vmove "usr/lib/*.so"
 		if [ "$build_option_gir" ]; then
 			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
 			vmove usr/share/vala
 		fi
 	}

From 1700adcd2676e9522b85d55d117503b1ac347e00 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:51:31 +0700
Subject: [PATCH 55/68] folks: add build option gir and vala

Disable gir and vala in evolution-data-server will make folks failed to
be built.

Either enable both of them, or disable both of them.
---
 srcpkgs/folks/template | 20 +++++++++++++++-----
 1 file changed, 15 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index e21ca9c1077..e41d63e4f5e 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -5,10 +5,11 @@ revision=1
 build_style=meson
 build_helper=gir
 configure_args="-Db_lto=false"
-hostmakedepends="pkg-config intltool glib-devel vala python3 python3-dbusmock
- gobject-introspection evolution-data-server-devel"
+hostmakedepends="pkg-config intltool glib-devel python3 python3-dbusmock
+ evolution-data-server-devel $(vopt_if vala vala)"
 makedepends="readline-devel telepathy-glib-devel zeitgeist-devel
- libgee08-devel evolution-data-server-devel tracker-devel"
+ libgee08-devel evolution-data-server-devel tracker-devel
+ $(vopt_if vala vala-devel)"
 depends="zeitgeist"
 short_desc="GObject Library to aggregate people into metacontacts"
 maintainer="Enno Boland <gottox@voidlinux.org>"
@@ -17,6 +18,11 @@ homepage="https://wiki.gnome.org/Projects/Folks"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=d6e778da637d3b33fd9a6b45115e8157d8868211dc08b943d1075b5eb7282bb9
 
+build_options="gir vala"
+if [ -z "$CROSS_BUILD" ]; then
+	build_options_default="gir vala"
+fi
+
 folks-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"
@@ -24,7 +30,11 @@ folks-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove "usr/lib/*.so"
-		vmove usr/share/vala
-		vmove usr/share/gir-1.0
+		if [ "$build_option_gir" ]; then
+			vmove usr/share/gir-1.0
+		fi
+		if [ "$build_option_vala" ]; then
+			vmove usr/share/vala
+		fi
 	}
 }

From 86018e3b2663f533000b02e7d35eac8e367d7278 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:52:50 +0700
Subject: [PATCH 56/68] nautilus: correct checkdepends

---
 srcpkgs/nautilus/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/nautilus/template b/srcpkgs/nautilus/template
index 94cb10492ca..c6faf7bf3d7 100644
--- a/srcpkgs/nautilus/template
+++ b/srcpkgs/nautilus/template
@@ -11,7 +11,7 @@ makedepends="exempi-devel gnome-autoar-devel gnome-desktop-devel gtk+3-devel
  libX11-devel libxml2-devel tracker-devel gst-plugins-base1-devel"
 depends="desktop-file-utils gsettings-desktop-schemas hicolor-icon-theme
  tracker-miners tracker"
-checkdepends="tracker"
+checkdepends="tracker tracker-miners"
 short_desc="GNOME file manager"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later"

From 57d1ae0957ddbd82f1cb8549e3d01f394a0c2d03 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Tue, 23 Jun 2020 22:53:14 +0700
Subject: [PATCH 57/68] tracker: add tar to checkdepends

---
 srcpkgs/tracker/template | 1 +
 1 file changed, 1 insertion(+)

diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template
index e814f77c711..19338db45e1 100644
--- a/srcpkgs/tracker/template
+++ b/srcpkgs/tracker/template
@@ -11,6 +11,7 @@ hostmakedepends="gettext pkg-config glib-devel vala"
 makedepends="dbus-devel libglib-devel icu-devel json-glib-devel
  libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel
  bash-completion"
+checkdepends="tar"
 short_desc="Personal search tool and storage system"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"

From 2b3aca95f3000ecbb72b318dec624efa3e36ea34 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 24 Jun 2020 23:18:40 +0700
Subject: [PATCH 58/68] gnome-shell: add do_check

---
 srcpkgs/gnome-shell/template | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/srcpkgs/gnome-shell/template b/srcpkgs/gnome-shell/template
index ee4c6288f5f..deb922a09ad 100644
--- a/srcpkgs/gnome-shell/template
+++ b/srcpkgs/gnome-shell/template
@@ -15,6 +15,7 @@ makedepends="at-spi2-atk caribou-devel evolution-data-server-devel folks-devel
  network-manager-applet-devel polkit-devel pulseaudio-devel
  startup-notification-devel telepathy-logger-devel gnome-autoar-devel"
 depends="caribou elogind glxinfo gnome-control-center gsettings-desktop-schemas upower"
+checkdepends="$depends accountsservice gdm xorg-server-xvfb pipewire mesa-dri dbus-x11"
 short_desc="GNOME core user interface"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
@@ -22,3 +23,19 @@ homepage="https://wiki.gnome.org/Projects/GnomeShell"
 changelog="https://raw.githubusercontent.com/GNOME/gnome-shell/gnome-3-30/NEWS"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=86d8abf70fab89d5d939dd7e38c59872492f444272a8524db79450a5180d45bb
+
+do_check() {
+	local _pid
+	export DISPLAY=:1
+	export XDG_RUNTIME_DIR=/tmp
+	Xvfb :1 -screen 0 1366x768x24 &
+	_pid=$!
+	trap "kill $_pid" EXIT
+	trap 'exit 1' INT HUP TERM
+	eval $(dbus-launch)
+	export DBUS_SESSION_BUS_ADDRESS
+	ninja test -C build
+	# trap is hanging on normal exit, dbus?
+	trap - EXIT INT HUP TERM
+	kill $_pid || true
+}

From ec00257d42a574bc1341f9d6ea635ad8de034abc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 11:12:34 +0700
Subject: [PATCH 59/68] fixup! evolution-data-server: split vala build option
 from gir

---
 srcpkgs/evolution-data-server/template | 1 -
 1 file changed, 1 deletion(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index d44a7ccc143..3639e1b1120 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -28,7 +28,6 @@ if [ -z "$CROSS_BUILD" ]; then
 	build_options_default="gir vala"
 fi
 
-
 do_check() {
 	cd build
 	# TODO This test is problematic, first run usually fail

From f46c946426d5c3162f2a99bd6db89d2b6238a6b4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 11:13:53 +0700
Subject: [PATCH 60/68] fixup! gnome-podcasts: update to 0.4.7.

---
 srcpkgs/gnome-podcasts/template | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/gnome-podcasts/template b/srcpkgs/gnome-podcasts/template
index 3c239df8424..7a5b0d0a168 100644
--- a/srcpkgs/gnome-podcasts/template
+++ b/srcpkgs/gnome-podcasts/template
@@ -19,10 +19,11 @@ export GETTEXT_BIN_DIR=/usr/bin
 export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext"
 export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
 
-if [ "$CROSS_BUILD" ]; then
-	post_patch() {
+post_patch() {
+	if [ "$CROSS_BUILD" ]; then
 		vsed -i scripts/cargo.sh \
 			-e 's%"$CARGO_TARGET_DIR"/%&${RUST_TARGET}/%' \
 			-e '/CARGO_HOME/d'
-	}
-fi
+	fi
+	cargo update --package openssl-sys --precise 0.9.58
+}

From 5ec5c80284d3bd5ee20f2fab05eef8417f254fa1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 11:14:51 +0700
Subject: [PATCH 61/68] fixup! evolution: update to 3.36.3.

---
 .../evolution/files/disableRuntimeTests.cmake | 45 -------------------
 srcpkgs/evolution/files/iconv-detect.h        |  5 ---
 srcpkgs/evolution/template                    | 31 ++-----------
 3 files changed, 4 insertions(+), 77 deletions(-)
 delete mode 100644 srcpkgs/evolution/files/disableRuntimeTests.cmake
 delete mode 100644 srcpkgs/evolution/files/iconv-detect.h

diff --git a/srcpkgs/evolution/files/disableRuntimeTests.cmake b/srcpkgs/evolution/files/disableRuntimeTests.cmake
deleted file mode 100644
index 8be55b42070..00000000000
--- a/srcpkgs/evolution/files/disableRuntimeTests.cmake
+++ /dev/null
@@ -1,45 +0,0 @@
-# This file was generated by CMake because it detected TRY_RUN() commands
-# in crosscompiling mode. It will be overwritten by the next CMake run.
-# Copy it to a safe location, set the variables to appropriate values
-# and use it then to preset the CMake cache (using -C).
-
-
-# _correct_iconv_EXITCODE
-#    indicates whether the executable would have been able to run on its
-#    target platform. If so, set _correct_iconv_EXITCODE to
-#    the exit code (in many cases 0 for success), otherwise enter "FAILED_TO_RUN".
-# The _correct_iconv_COMPILED variable holds the build result for this TRY_RUN().
-# 
-# Source file   : /builddir/evolution-data-server-3.26.0/build/CMakeFiles/CMakeTmp/src.c
-# Executable    : /builddir/evolution-data-server-3.26.0/build/CMakeFiles/cmTC_315ee-_correct_iconv_EXITCODE
-# Run arguments : 
-#    Called from: [2]	/usr/share/cmake-3.9/Modules/CheckCSourceRuns.cmake
-#                 [1]	/builddir/evolution-data-server-3.26.0/CMakeLists.txt
-
-set( _correct_iconv_EXITCODE 
-     0
-     CACHE INTERNAL "Result from TRY_RUN" FORCE)
-set(_correct_iconv_EXITCODE__TRYRUN_OUTPUT
-     0
-     CACHE INTERNAL "Result from TRY_RUN" FORCE)
-
-
-# HAVE_LKSTRFTIME_EXITCODE
-#    indicates whether the executable would have been able to run on its
-#    target platform. If so, set HAVE_LKSTRFTIME_EXITCODE to
-#    the exit code (in many cases 0 for success), otherwise enter "FAILED_TO_RUN".
-# The HAVE_LKSTRFTIME_COMPILED variable holds the build result for this TRY_RUN().
-# 
-# Source file   : /builddir/evolution-data-server-3.26.0/build/CMakeFiles/CMakeTmp/src.c
-# Executable    : /builddir/evolution-data-server-3.26.0/build/CMakeFiles/cmTC_d2897-HAVE_LKSTRFTIME_EXITCODE
-# Run arguments : 
-#    Called from: [2]	/usr/share/cmake-3.9/Modules/CheckCSourceRuns.cmake
-#                 [1]	/builddir/evolution-data-server-3.26.0/CMakeLists.txt
-
-set( HAVE_LKSTRFTIME_EXITCODE 
-     0
-     CACHE INTERNAL "Result from TRY_RUN" FORCE)
-set( HAVE_LKSTRFTIME_EXITCODE__TRYRUN_OUTPUT
-     0
-     CACHE INTERNAL "Result from TRY_RUN" FORCE)
-
diff --git a/srcpkgs/evolution/files/iconv-detect.h b/srcpkgs/evolution/files/iconv-detect.h
deleted file mode 100644
index 46f476d5bc9..00000000000
--- a/srcpkgs/evolution/files/iconv-detect.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/* This is an auto-generated header, DO NOT EDIT! */
-
-#define ICONV_ISO_D_FORMAT "iso-%d-%d"
-#define ICONV_ISO_S_FORMAT "iso-%d-%s"
-#define ICONV_10646 "iso-10646"
diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index d95c07eb72c..9f33078cf1e 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -5,12 +5,12 @@ revision=1
 build_style=cmake
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
  -DENABLE_TEXT_HIGHLIGHT=OFF -DENABLE_PST_IMPORT=OFF
- -DENABLE_WEATHER=$(vopt_if gir ON OFF)"
+ -DENABLE_WEATHER=ON"
 hostmakedepends="gnome-doc-utils gobject-introspection intltool itstool
- pkg-config"
+ pkg-config glib-devel"
 makedepends="NetworkManager-devel clutter-gtk-devel enchant2-devel
  evolution-data-server-devel gspell-devel gtkhtml-devel libcanberra-devel
- $(vopt_if gir libgweather-devel) libnotify-devel webkit2gtk-devel ytnef-devel
+ libgweather-devel libnotify-devel webkit2gtk-devel ytnef-devel
  gnome-desktop-devel"
 depends="gnome-keyring"
 short_desc="Integrated mail, addressbook and calendaring for GNOME"
@@ -24,30 +24,7 @@ shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 
 build_options="gir"
-if [ -z "$CROSS_BUILD" ]; then
-	build_options_default="gir"
-else
-	hostmakedepends+=" glib-devel"
-fi
-
-# cmake perfomrms 2 checks using binary runtime, about iconv and sfrtime.
-# musl (1.1.16) does not support "ISO-2022-JP" encoding (see its roadmap),
-# although evolution-data-server is fine with musl.
-# If crossbuild, cmake let disabling runtime checks via specific directives.
-# test iconv-detect.c also generates iconv-detect.h that is required for build.
-# So completly disable test from iconv-detect.c (cmake.patch file) and
-# use a cmake cache file on crossbuild to disable sfrtime running test.
-if [ "$CROSS_BUILD" ]; then
-	configure_args+=" -C disableRuntimeTests.cmake"
-fi
-
-pre_configure() {
-	mkdir -p build
-	cp ${FILESDIR}/iconv-detect.h ${wrksrc}/build/.
-	if [ "$CROSS_BUILD" ]; then
-		cp ${FILESDIR}/disableRuntimeTests.cmake ${wrksrc}/build/.
-	fi
-}
+build_options_default="gir"
 
 evolution-devel_package() {
 	depends="webkit2gtk-devel gtk+3-devel libglib-devel evolution-data-server-devel

From 82c239fd27862d7ab13efb654cf728a50fcd3298 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 13:35:57 +0700
Subject: [PATCH 62/68] fixup! fixup! evolution-data-server: split vala build
 option from gir

---
 .../patches/no-clear-ldflags.patch                    | 11 +++++++++++
 srcpkgs/evolution-data-server/template                |  8 +++++---
 2 files changed, 16 insertions(+), 3 deletions(-)
 create mode 100644 srcpkgs/evolution-data-server/patches/no-clear-ldflags.patch

diff --git a/srcpkgs/evolution-data-server/patches/no-clear-ldflags.patch b/srcpkgs/evolution-data-server/patches/no-clear-ldflags.patch
new file mode 100644
index 00000000000..b562ef36f36
--- /dev/null
+++ b/srcpkgs/evolution-data-server/patches/no-clear-ldflags.patch
@@ -0,0 +1,11 @@
+--- cmake/modules/GObjectIntrospection.cmake.orig	2020-07-06 22:29:51.799291082 +0700
++++ cmake/modules/GObjectIntrospection.cmake	2020-07-06 22:29:58.798371117 +0700
+@@ -122,7 +122,7 @@
+ 		file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/${_gir_name}_files "${_gir_files}")
+ 
+ 		add_custom_command(
+-			COMMAND ${CMAKE_COMMAND} -E env "CC='${CMAKE_C_COMPILER}'" LDFLAGS=
++			COMMAND ${CMAKE_COMMAND} -E env "CC='${CMAKE_C_COMPILER}'"
+ 				${INTROSPECTION_SCANNER_ENV}
+ 				${G_IR_SCANNER}
+ 				${INTROSPECTION_SCANNER_ARGS}
diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 3639e1b1120..080176155a9 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -30,12 +30,14 @@ fi
 
 do_check() {
 	cd build
-	# TODO This test is problematic, first run usually fail
+	# TODO This test is problematic, fail intermittent, especially on
+	# first clean run.
 	# Signify something wrong with evolution-data-server on first run
-	ctest -R test-book-client-custom-summary || true
 	# make test run ctest --force-new-ctest-process which is problematic
+	# make test run ctest --force-new-ctest-process which is problematic
+	# noone should run multiple instance of evolution-data-server irl.
 	# noone should run multiple instance of evolution-data-server irl.
-	ctest
+	ctest -E test-book-client-custom-summary
 }
 
 post_install() {

From a3f732aa4ebfb940a999b85151232b1a471cb98f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 13:36:48 +0700
Subject: [PATCH 63/68] fixup! at-spi2-atk: update to 2.34.2.

---
 srcpkgs/at-spi2-atk/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/at-spi2-atk/template b/srcpkgs/at-spi2-atk/template
index aa7b8839c9f..591cc4aafa4 100644
--- a/srcpkgs/at-spi2-atk/template
+++ b/srcpkgs/at-spi2-atk/template
@@ -12,6 +12,10 @@ homepage="http://www.gnome.org"
 distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz"
 checksum=901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0
 
+do_check() {
+	: wants dbus
+}
+
 at-spi2-atk-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	short_desc+=" - development files"

From 79af42cb55e88eee69bd3fb9e4d5a52c37297eae Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 13:37:24 +0700
Subject: [PATCH 64/68] fixup! at-spi2-core: update to 2.36.0.

---
 srcpkgs/at-spi2-core/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/at-spi2-core/template b/srcpkgs/at-spi2-core/template
index fb799af7e52..beee578d015 100644
--- a/srcpkgs/at-spi2-core/template
+++ b/srcpkgs/at-spi2-core/template
@@ -17,6 +17,10 @@ checksum=88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a
 build_options="gir"
 build_options_default="gir"
 
+do_check() {
+	: "wants DBus?"
+}
+
 post_install() {
 	rm -rf ${DESTDIR}/usr/lib/systemd
 }

From a1816a8656ea9939f1fbd3aa2831675b8adf5158 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 15:51:56 +0700
Subject: [PATCH 65/68] fixup! totem: rebuild against libgnome-desktop-3.so.19

[ci skip]
---
 srcpkgs/totem/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/totem/template b/srcpkgs/totem/template
index e4186632153..e7db9702c38 100644
--- a/srcpkgs/totem/template
+++ b/srcpkgs/totem/template
@@ -32,6 +32,10 @@ disable_parallel_build=yes
 build_options="gir vala"
 build_options_default="gir vala"
 
+do_check() {
+	: skip
+}
+
 libtotem_package() {
 	short_desc+=" - runtime library"
 	pkg_install() {

From e53a485127abbf97f7cfbcd99f523e789563115e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 16:46:21 +0700
Subject: [PATCH 66/68] fixup! fixup! fixup! evolution-data-server: split vala
 build option from gir

---
 srcpkgs/evolution-data-server/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/evolution-data-server/template b/srcpkgs/evolution-data-server/template
index 080176155a9..b44a6af9e47 100644
--- a/srcpkgs/evolution-data-server/template
+++ b/srcpkgs/evolution-data-server/template
@@ -4,7 +4,7 @@ version=3.36.3
 revision=1
 _basever=${version%.*}
 build_style=cmake
-build_helper=gir
+build_helper="gir qemu"
 configure_args="-DENABLE_UOA=OFF
  $(vopt_if gir -DENABLE_INTROSPECTION=ON)
  $(vopt_if vala -DENABLE_VALA_BINDINGS=ON)"

From 68f2ec510e16ca1bf27b4c142c07207875c0e326 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 20:17:27 +0700
Subject: [PATCH 67/68] fixup! folks: add build option gir and vala

---
 srcpkgs/folks/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/folks/template b/srcpkgs/folks/template
index e41d63e4f5e..4a1bfc5ddcf 100644
--- a/srcpkgs/folks/template
+++ b/srcpkgs/folks/template
@@ -3,7 +3,7 @@ pkgname=folks
 version=0.14.0
 revision=1
 build_style=meson
-build_helper=gir
+build_helper="gir qemu"
 configure_args="-Db_lto=false"
 hostmakedepends="pkg-config intltool glib-devel python3 python3-dbusmock
  evolution-data-server-devel $(vopt_if vala vala)"

From 23fed3769a3d14eea6a9bb0bb184c342a0bb7457 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 12 Jul 2020 20:18:29 +0700
Subject: [PATCH 68/68] fixup! evolution: update to 3.36.3.

---
 srcpkgs/evolution/template | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/evolution/template b/srcpkgs/evolution/template
index 9f33078cf1e..7dcf0242db2 100644
--- a/srcpkgs/evolution/template
+++ b/srcpkgs/evolution/template
@@ -3,6 +3,7 @@ pkgname=evolution
 version=3.36.3
 revision=1
 build_style=cmake
+build_helper="gir qemu"
 configure_args="-DENABLE_AUTOAR=OFF -DENABLE_LIBCRYPTUI=OFF -DENABLE_GTKSPELL=OFF
  -DENABLE_TEXT_HIGHLIGHT=OFF -DENABLE_PST_IMPORT=OFF
  -DENABLE_WEATHER=ON"
@@ -24,7 +25,9 @@ shlib_provides="libevolution-calendar.so libevolution-util.so libemail-engine.so
  libevolution-mail.so libevolution-shell.so"
 
 build_options="gir"
-build_options_default="gir"
+if [ -z "$CROSS_BUILD" ]; then
+	build_options_default="gir"
+fi
 
 evolution-devel_package() {
 	depends="webkit2gtk-devel gtk+3-devel libglib-devel evolution-data-server-devel

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR REVIEW] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (80 preceding siblings ...)
  2020-07-12 13:18 ` sgn
@ 2020-07-19  9:17 ` not-chicken
  2020-08-08 19:28 ` ericonr
                   ` (5 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: not-chicken @ 2020-07-19  9:17 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 452 bytes --]

New review comment by not-chicken on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#discussion_r456883964

Comment:
>Regarding gnome-screensaver since it's no longer needed and unmaintained upstream, maybe it should be removed ?

I just realized I use it with budgie lol. It's the only locker that does work with it ootb. Maybe we should leave `gnome-screensaver` until it fails to build from source or something...

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR REVIEW] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (81 preceding siblings ...)
  2020-07-19  9:17 ` [PR REVIEW] " not-chicken
@ 2020-08-08 19:28 ` ericonr
  2020-08-08 19:28 ` ericonr
                   ` (4 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: ericonr @ 2020-08-08 19:28 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 157 bytes --]

New review comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#discussion_r467495974

Comment:
Same here.

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR REVIEW] gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (82 preceding siblings ...)
  2020-08-08 19:28 ` ericonr
@ 2020-08-08 19:28 ` ericonr
  2020-08-08 19:44 ` PaperMountainStudio
                   ` (3 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: ericonr @ 2020-08-08 19:28 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 221 bytes --]

New review comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#discussion_r467495957

Comment:
Add `dbus` to `checkdepends` and run tests with `dbus-run-session <check>`

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (83 preceding siblings ...)
  2020-08-08 19:28 ` ericonr
@ 2020-08-08 19:44 ` PaperMountainStudio
  2020-08-08 20:04 ` ericonr
                   ` (2 subsequent siblings)
  87 siblings, 0 replies; 89+ messages in thread
From: PaperMountainStudio @ 2020-08-08 19:44 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 202 bytes --]

New comment by PaperMountainStudio on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-670966660

Comment:
Shouldn't this PR update `gnome` metapackage too?

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (84 preceding siblings ...)
  2020-08-08 19:44 ` PaperMountainStudio
@ 2020-08-08 20:04 ` ericonr
  2020-08-15 23:10 ` q66
  2020-08-15 23:10 ` [PR PATCH] [Closed]: " q66
  87 siblings, 0 replies; 89+ messages in thread
From: ericonr @ 2020-08-08 20:04 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 191 bytes --]

New comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-670968559

Comment:
@PaperMountainStudio this is being done in #22936 

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (85 preceding siblings ...)
  2020-08-08 20:04 ` ericonr
@ 2020-08-15 23:10 ` q66
  2020-08-15 23:10 ` [PR PATCH] [Closed]: " q66
  87 siblings, 0 replies; 89+ messages in thread
From: q66 @ 2020-08-15 23:10 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 346 bytes --]

New comment by q66 on void-packages repository

https://github.com/void-linux/void-packages/pull/21382#issuecomment-674456226

Comment:
since @mnabid said they won't have time to work on this one anymore, and there is a WIP 3.38 PR at https://github.com/void-linux/void-packages/pull/24260, closing this one - let's just wait for 3.38 next month

^ permalink raw reply	[flat|nested] 89+ messages in thread

* Re: [PR PATCH] [Closed]: gnome 3.36 updates
  2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
                   ` (86 preceding siblings ...)
  2020-08-15 23:10 ` q66
@ 2020-08-15 23:10 ` q66
  87 siblings, 0 replies; 89+ messages in thread
From: q66 @ 2020-08-15 23:10 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1684 bytes --]

There's a closed pull request on the void-packages repository

gnome 3.36 updates
https://github.com/void-linux/void-packages/pull/21382

Description:
<details>
<summary><i>List of updates : </i></summary>

 * atk -> 2.36.0
 * at-spi2-atk -> 2.34.2
 * budgie-desktop -> (revbump)
 * cheese -> (revbump)
 * dconf-editor -> 3.36.2
 * devhelp -> 3.36.2
 * eog -> 3.36.2
 * evince -> 3.36.3
 * evolution -> 3.36.3
 * evolution-data-server -> 3.36.3
 * evolution-ews -> 3.36.3
 * file-roller -> 3.36.2
 * folks -> 0.14.0
 * gdm -> 3.36.2
 * gedit -> 3.36.2
 * gnome-books -> (revbump)
 * gnome-characters -> (revbump)
 * gnome-clocks -> 3.36.2
 * gnome-contacts -> 3.36.1
 * gnome-control-center -> 3.36.3
 * gnome-desktop -> 3.36.2
 * gnome-documents -> (revbump)
 * gnome-epub-thumbnailer -> 1.6
 * gnome-flashback -> 3.36.3
 * gnome-font-viewer -> (revbump)
 * gnome-getting-started-docs -> 3.36.2
 * gnome-initial-setup -> 3.36.3
 * gnome-maps -> 3.36.2
 * gnome-menus -> 3.36.0
 * gnome-music -> 3.36.3
 * gnome-panel -> 3.36.1
 * gnome-podcasts -> 0.4.7
 * gnome-screensaver -> (revbump)
 * gnome-session -> 3.36.0
 * gnome-settings-daemon -> 3.36.1
 * gnome-shell -> 3.36.3
 * gnome-shell-extensions -> 3.36.2
 * gnome-terminal -> 3.36.2
 * gnome-user-docs -> 3.36.2
 * gnome-weather -> (revbump)
 * graphene -> 1.10.0
 * lutris -> (revbump)
 * metacity -> 3.36.1
 * mutter -> 3.36.3
 * nautilus -> 3.36.3
 * orca -> 3.36.2
 * python-atspi -> 2.36.0
 * python3-atspi -> 2.36.0
 * totem -> (revbump)
 * tracker -> 2.3.4
 * xdg-desktop-portal-gtk -> (revbump)
</details>

Built natively in `x86_64` and crossbuilt for `armv7l`.

^ permalink raw reply	[flat|nested] 89+ messages in thread

end of thread, other threads:[~2020-08-15 23:10 UTC | newest]

Thread overview: 89+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-27 10:48 [PR PATCH] gedit: update to 3.36.2 mnabid
2020-04-27 15:38 ` sgn
2020-04-28  7:56 ` [PR PATCH] [Updated] [WIP] gnome 3.36 updates mnabid
2020-04-28  7:58 ` mnabid
2020-04-28 12:24 ` [PR PATCH] [Updated] " mnabid
2020-04-28 13:34 ` sgn
2020-04-28 15:25 ` rwt3k
2020-04-29  8:15 ` [WIP] gnome apps " mnabid
2020-04-29  8:15 ` mnabid
2020-04-29  9:54 ` mnabid
2020-04-29 22:01 ` [WIP] gnome " kuba77cz
2020-04-30  3:51 ` mnabid
2020-05-01  8:19 ` [PR PATCH] [Updated] " mnabid
2020-05-01  8:28 ` mnabid
2020-05-01  8:46 ` mnabid
2020-05-02  1:16 ` mnabid
2020-05-02  1:20 ` mnabid
2020-05-02  1:26 ` mnabid
2020-05-02  1:30 ` mnabid
2020-05-02 13:47 ` sgn
2020-05-02 13:50 ` sgn
2020-05-04  9:11 ` [PR PATCH] [Updated] " mnabid
2020-05-06  7:01 ` not-chicken
2020-05-06 15:06 ` [PR PATCH] [Updated] " mnabid
2020-05-06 15:13 ` mnabid
2020-05-06 15:19 ` mnabid
2020-05-06 16:37 ` not-chicken
2020-05-07  6:45 ` [PR PATCH] [Updated] " mnabid
2020-05-07 13:43 ` mnabid
2020-05-07 18:10 ` mnabid
2020-05-08  8:06 ` toluschr
2020-05-08  8:06 ` toluschr
2020-05-08 12:00 ` mnabid
2020-05-08 15:22 ` toluschr
2020-05-08 15:24 ` not-chicken
2020-05-08 18:11 ` [PR PATCH] [Updated] " mnabid
2020-05-08 18:23 ` mnabid
2020-05-10 14:37 ` mnabid
2020-05-10 15:14 ` not-chicken
2020-05-10 15:36 ` toluschr
2020-05-10 16:37 ` not-chicken
2020-05-10 17:03 ` toluschr
2020-05-10 22:47 ` [PR PATCH] [Updated] " mnabid
2020-05-10 23:54 ` flexibeast
2020-05-11  0:07 ` flexibeast
2020-05-11  1:18 ` not-chicken
2020-05-11  3:22 ` flexibeast
2020-05-11  3:32 ` not-chicken
2020-05-11 16:53 ` not-chicken
2020-05-11 17:52 ` Gottox
2020-05-11 22:01 ` [PR PATCH] [Updated] " mnabid
2020-05-12  9:58 ` not-chicken
2020-05-14 10:28 ` [PR PATCH] [Updated] " mnabid
2020-05-20  2:22 ` mnabid
2020-05-20 19:40 ` [PR PATCH] [Updated] " mnabid
2020-05-21 12:09 ` mnabid
2020-05-21 12:14 ` mnabid
2020-05-21 12:18 ` mnabid
2020-05-21 12:52 ` [PR PATCH] [Updated] " mnabid
2020-05-21 13:25 ` mnabid
2020-05-25  5:37 ` [PR PATCH] [Updated] " mnabid
2020-05-26  2:24 ` mnabid
2020-05-29 12:13 ` mnabid
2020-05-29 13:30 ` mnabid
2020-05-29 18:29 ` mnabid
2020-05-30  4:52 ` not-chicken
2020-05-30 19:22 ` [PR PATCH] [Updated] " mnabid
2020-05-31  2:56 ` mnabid
2020-06-01  1:11 ` mnabid
2020-07-03  9:49 ` mnabid
2020-07-03 12:36 ` [PR PATCH] [Updated] " mnabid
2020-07-03 12:40 ` mnabid
2020-07-03 14:57 ` sgn
2020-07-03 15:04 ` [PR PATCH] [Updated] " mnabid
2020-07-03 15:06 ` mnabid
2020-07-04 11:38 ` sgn
2020-07-04 12:15 ` [PR PATCH] [Updated] " mnabid
2020-07-06 21:20 ` mnabid
2020-07-07 15:20 ` mnabid
2020-07-12  8:53 ` sgn
2020-07-12  9:46 ` sgn
2020-07-12 13:18 ` sgn
2020-07-19  9:17 ` [PR REVIEW] " not-chicken
2020-08-08 19:28 ` ericonr
2020-08-08 19:28 ` ericonr
2020-08-08 19:44 ` PaperMountainStudio
2020-08-08 20:04 ` ericonr
2020-08-15 23:10 ` q66
2020-08-15 23:10 ` [PR PATCH] [Closed]: " q66

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).